在命令行中運行腳本:
php testfile.php
該文件包含以下內容:
echo print_r($_SERVER, true);
我發現它在終端輸出JAVA_HOME和PATH變量。我已經嘗試將自己的變量添加到/ etc/environment(Linux)中,假設它使用了這些變量,但它們沒有出現。
那麼這些變量定義在哪裏,我可以添加自己的?
在命令行中運行腳本:
php testfile.php
該文件包含以下內容:
echo print_r($_SERVER, true);
我發現它在終端輸出JAVA_HOME和PATH變量。我已經嘗試將自己的變量添加到/ etc/environment(Linux)中,假設它使用了這些變量,但它們沒有出現。
那麼這些變量定義在哪裏,我可以添加自己的?
從PHP文檔(我建議):
$ _SERVER是含有如頁眉,路徑和腳本的位置信息的數組。該數組中的條目由Web服務器創建。不能保證每個Web服務器都能提供這些內容;服務器可能會省略一些,或者提供這裏沒有列出的其他人。也就是說,大量的這些變量在»CGI/1.1規範中有說明,所以您應該能夠期待這些。
在這裏看到更詳細的解釋:http://php.net/manual/en/reserved.variables.server.php
可以使用 SetEnv ENVIRONMENT "production"
例如設置在你的Apache配置環境變量。
根據PHP Documentation上$_SERVER
超全局:
此數組中的條目由web服務器創建的。不能保證每個Web服務器都能提供這些內容;服務器可能會省略一些,或者提供這裏沒有列出的其他人。也就是說,大量的這些變量在»CGI/1.1 specification
因此,實現取決於您的Web服務器軟件。對於Apache一些指數(如REMOTE_HOST
)來自配置文件httpd.conf