首頁  >  文章  >  後端開發  >  細說PHP中的$_SERVER

細說PHP中的$_SERVER

韦小宝
韦小宝原創
2018-02-28 09:42:325464瀏覽

相信很多同學在PHP開發的過程中都見過$_SERVER,相信很多同學都很疑惑$_SERVER到底是什麼呢,其實它就是一個數組,而$_SERVER這個數組中包含的東西可多了,那我們這篇文章就來詳細的講一下PHP中的$_SERVER數組裡包含的到底是什麼

$_SERVER['HTTP_ACCEPT_LANGUAGE'];//浏览器语言 
$_SERVER['REMOTE_ADDR']; //当前用户 IP 。 
$_SERVER['REMOTE_HOST']; //当前用户主机名 
$_SERVER['REQUEST_URI']; //URL
$_SERVER['REMOTE_PORT']; //端口。 
$_SERVER['SERVER_NAME']; //服务器主机的名称。 
$_SERVER['PHP_SELF'];//正在执行脚本的文件名 
$_SERVER['argv']; //传递给该脚本的参数。 
$_SERVER['argc']; //传递给程序的命令行参数的个数。 
$_SERVER['GATEWAY_INTERFACE'];//CGI 规范的版本。 
$_SERVER['SERVER_SOFTWARE']; //服务器标识的字串 
$_SERVER['SERVER_PROTOCOL']; //请求页面时通信协议的名称和版本 
$_SERVER['REQUEST_METHOD'];//访问页面时的请求方法

$_SERVER['QUERY_STRING']; //查询(query)的字符串。
$_SERVER['DOCUMENT_ROOT']; //当前运行脚本所在的文档根目录 
$_SERVER['HTTP_ACCEPT']; //当前请求的 Accept: 头部的内容。 
$_SERVER['HTTP_ACCEPT_CHARSET']; //当前请求的 Accept-Charset: 头部的内容。 
$_SERVER['HTTP_ACCEPT_ENCODING']; //当前请求的 Accept-Encoding: 头部的内容 
$_SERVER['HTTP_CONNECTION']; //当前请求的 Connection: 头部的内容。例如:“Keep-Alive”。 
$_SERVER['HTTP_HOST']; //当前请求的 Host: 头部的内容。 
$_SERVER['HTTP_REFERER']; //链接到当前页面的前一页面的 URL 地址。 
$_SERVER['HTTP_USER_AGENT']; //当前请求的 User_Agent: 头部的内容。 
$_SERVER['HTTPS']; //如果通过https访问,则被设为一个非空的值(on),否则返回off 
$_SERVER['SCRIPT_FILENAME']; //当前执行脚本的绝对路径名。 
$_SERVER['SERVER_ADMIN']; //管理员信息 
$_SERVER['SERVER_PORT']; //服务器所使用的端口 
$_SERVER['SERVER_SIGNATURE']; //包含服务器版本和虚拟主机名的字符串。 
$_SERVER['PATH_TRANSLATED']; //当前脚本所在文件系统(不是文档根目录)的基本路径。 
$_SERVER['SCRIPT_NAME']; //包含当前脚本的路径。这在页面需要指向自己时非常有用。 
$_SERVER['PHP_AUTH_USER']; //当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。 
$_SERVER['PHP_AUTH_PW']; //当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。 
$_SERVER['AUTH_TYPE']; //当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型

 以上就是$_SERVER裡的所有值了,我們可以將$_SERVER當成普通數組一樣,去修改它等操作。

兩種PHP取得伺服器端IP位址的方法

PHP取得伺服器IP位址方法一:

if ('/' == DIRECTORY_SEPARATOR) {
    $server_ip = $_SERVER['SERVER_ADDR'];
} else {
    $server_ip = @gethostbyname($_SERVER['SERVER_NAME']);
}
echo $server_ip;


php取得伺服器ip位址方法二:

/**
 * 获取服务器端IP地址
 * @return string
 */

function get_server_ip()
{
    if (isset($_SERVER)) {
        if ($_SERVER['SERVER_ADDR']) {
            $server_ip = $_SERVER['SERVER_ADDR'];
        } else {
            $server_ip = $_SERVER['LOCAL_ADDR'];
        }
    } else {
        $server_ip = getenv('SERVER_ADDR');
    }
    return $server_ip;
}

echo get_server_ip();

PHP中的$_SERVER並不復雜,仔細去看就這麼點東西,PHP中的$_SERVER數組是一個包含伺服器和執行環境資訊的數組。

相關文章推薦:

PHP伺服器變數$_SERVER詳解

PHP中$_SERVER的用法

以上是細說PHP中的$_SERVER的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn