PHP 5.4 支持用于开发目的的内置 Web 服务器。我们正在开发的应用程序是通过环境变量配置的。
使用 Apache,您可以这样做:
SetEnv FAVORITE_COLOR white
使用普通 CLI,您可以执行以下操作:
$ export FAVORITE_COLOR=black
$ php -a
php > echo $_SERVER['FAVORITE_COLOR'];
有没有办法为内置的 Web 服务器设置这些变量?
PHP 5.4 支持用于开发目的的内置 Web 服务器。我们正在开发的应用程序是通过环境变量配置的。
使用 Apache,您可以这样做:
SetEnv FAVORITE_COLOR white
使用普通 CLI,您可以执行以下操作:
$ export FAVORITE_COLOR=black
$ php -a
php > echo $_SERVER['FAVORITE_COLOR'];
有没有办法为内置的 Web 服务器设置这些变量?
看起来 E 被排除在运行内置服务器的 variable_order 设置之外。如果将 E 添加到 variable_order 设置,它会起作用:
测试.php
<?php
var_dump($_ENV['FOO']);
壳:
FOO=BAR php -d variables_order=EGPCS -S localhost:9090 /tmp/test.php
输出:
string 'BAR' (length=3)
在 PHP 5.4.12 上测试
在 Windows 上:
SET FOO=BAR
php -s localhost:9090