8.20. Reading Environment Variables
Problem
You want to get the value of an environment variable.
Solution
Read the value from the $_ENV
superglobal array:
$name = $_ENV['USER'];
Discussion
Environment variables are named values associated with a process.
For instance, in Unix, you can check
the value of $_ENV['HOME']
to find the home
directory of a user:
print $_ENV['HOME']; // user's home directory
/home/adam
Early versions of PHP automatically created PHP variables for all environment variables by default. As of 4.1.0, php.ini-recommended disables this because of speed considerations; however php.ini-dist continues to enable environment variable loading for backward compatibility.
The $_ENV
array is created only if the value of the
variables_order
configuration directive
contains E
. If $_ENV
isn’t available, use getenv( )
to
retrieve an environment variable:
$path = getenv('PATH');
The getenv( )
function isn’t
available if you’re running PHP as an ISAPI module.
See Also
Recipe 8.22 on setting environment variables;
documentation on getenv( )
at
http://www.php.net/getenv; information on
environment variables in PHP at
http://www.php.net/reserved.variables.php#reserved.variables.environment.
Get PHP Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.