Symptoms

Configuration / verification script that uses PHP $_ENV environmental variable does not work correctly.

Cause

The $_ENV variables are imported from the environment under which PHP is running, and depending on your setup. The $_ENV is empty. The array wasn't populated because of a setting in php.ini:

; This directive determines which super global arrays are registered when PHP
; starts up. If the register_globals directive is enabled, it also determines
; what order variables are populated into the global space. G,P,C,E & S are
; abbreviations for the following respective super globals: GET, POST, COOKIE,
; ENV and SERVER. There is a performance penalty paid for the registration of
; these arrays and because ENV is not as commonly used as the others, ENV is
; is not recommended on productions servers. You can still get access to
; the environment variables through getenv() should you need to.
; Default Value: "EGPCS"
; Development Value: "GPCS"
; Production Value: "GPCS";
; http://www.php.net/manual/en/ini.core.php#ini.variables-order
variables_order = "GPCS"

Resolution

Set the variables_order setting in the php.ini to "EGPCS".

Internal content