【发布时间】:2017-05-24 17:49:37
【问题描述】:
我正在从 w3schools 的 PHP 教程学习 PHP。我正在使用 PHP 7.0.13
在学习的过程中,我遇到了全局变量 - 超全局的概念。
This is the page from where I'm learning Global Variables - Superglobals
注意:请到以上链接查看服务器变量列表。
在此页面上,我尝试了所有服务器变量,但我收到 Notice 作为 Undefined index 以下几个服务器变量:
$_SERVER['HTTP_ACCEPT_CHARSET']$_SERVER['HTTPS']$_SERVER['REMOTE_HOST']$_SERVER['SCRIPT_URI']
对于上述每个变量,我都尝试了以下代码。例如:
<!DOCTYPE html>
<html>
<body>
<pre>
<?php
echo $_SERVER['PATH_TRANSLATED'];//like this I tried for other three server variables also
?>
</pre>
</body>
</html>
除此之外,当我尝试执行代码 print_r($_SERVER); 时,我还观察到数组 $_SERVRER 中有几个新的服务器变量
那么,我的问题是 PHP5 中存在的一些旧服务器变量在 PHP7 中已被删除,而新添加的其他变量很少?
我也尝试查看 PHP 文档,但我也对此一无所知。
所以,请有人澄清我的疑问。
谢谢。
【问题讨论】:
-
存在哪些值几乎完全取决于 web 服务器,它将它们传递给 PHP(是的,这就是它们在
$_SERVER超全局中的原因)。那么……你在哪个网络服务器上运行它? -
@deceze :我正在使用 Apache/2.4.23 (Win32)
标签: php superglobals server-variables