@@ -88,26 +88,42 @@ private function getVariables(array $envFiles): array
88
88
return [];
89
89
}
90
90
91
- $ vars = explode (', ' , $ dotenvVars );
92
- sort ($ vars );
91
+ $ dotenvVars = explode (', ' , $ dotenvVars );
92
+
93
+ $ AllDotenvVars = $ this ->getAllVarsFromEnvFiles ($ envFiles );
93
94
94
- $ output = [];
95
- $ fileValues = [];
96
- foreach ($ vars as $ var ) {
95
+ $ variables = [];
96
+ foreach ($ AllDotenvVars as $ var ) {
97
97
$ realValue = $ _SERVER [$ var ];
98
- $ varDetails = [$ var , $ realValue ];
98
+ $ details = [$ var , $ realValue ];
99
99
foreach ($ envFiles as $ envFile ) {
100
- $ values = $ fileValues [$ envFile ] ?? $ fileValues [$ envFile ] = $ this ->loadValues ($ envFile );
101
-
102
- $ varString = $ values [$ var ] ?? '<fg=yellow>n/a</> ' ;
103
- $ shortenedVar = $ this ->getHelper ('formatter ' )->truncate ($ varString , 30 );
104
- $ varDetails [] = $ varString === $ realValue ? '<fg=green> ' .$ shortenedVar .'</> ' : $ shortenedVar ;
100
+ $ envFileValues = $ this ->loadValues ($ envFile );
101
+ if (\array_key_exists ($ var , $ envFileValues )) {
102
+ $ shortenedVar = $ this ->getHelper ('formatter ' )->truncate ($ envFileValues [$ var ], 30 );
103
+ $ shortenedVar = \in_array ($ var , $ dotenvVars ) && $ realValue === $ envFileValues [$ var ] ? '<fg=green> ' .$ shortenedVar .'</> ' : '<fg=red> ' .$ shortenedVar .'</> ' ;
104
+ } else {
105
+ $ shortenedVar = '<fg=yellow>n/a</> ' ;
106
+ }
107
+ $ details [] = $ shortenedVar ;
105
108
}
106
109
107
- $ output [] = $ varDetails ;
110
+ $ variables [] = $ details ;
111
+ }
112
+
113
+ return $ variables ;
114
+ }
115
+
116
+ private function getAllVarsFromEnvFiles (array $ files ): array
117
+ {
118
+ $ vars = [];
119
+ foreach ($ files as $ file ) {
120
+ $ vars = array_merge ($ this ->loadValues ($ file ), $ vars );
108
121
}
109
122
110
- return $ output ;
123
+ $ vars = array_keys ($ vars );
124
+ sort ($ vars );
125
+
126
+ return $ vars ;
111
127
}
112
128
113
129
private function getEnvFiles (): array
0 commit comments