Home > Article > Backend Development > Detailed explanation of PHP server variable $_SERVER
Detailed explanation of PHP server variable $_SERVER (personal arrangement)
Today I carefully studied the content of the manual on server variables, wrote a note, and posted it in the hope that it will be helpful to beginners.
The red ones are what I think are more commonly used and important, and the blue parts are added after my own debugging for easy understanding.
Please respect the fruits of labor when reposting, haha, physical work is not easy to handle.
Detailed explanation of server variable $_SERVER:
1, $_SESSION['PHP_SELF'] -- Get the file name of the currently executing script
2, $_SERVER['SERVER_PROTOCOL'] -- The name and name of the communication protocol when requesting the page Version. For example, "HTTP/1.0".
3. $_SERVER['REQUEST_TIME'] -- The timestamp when the request started. Valid since PHP 5.1.0. The effect is the same as the time function.
4. $_SERVER['argv'] -- parameters passed to the script. I tried it, and the get method can get $_SERVER['argv'][0]; the post method cannot assign a value to it.
5. $_SERVER['SERVER_NAME'] -- Returns the current host name.
6. $_SERVER['SERVER_SOFTWARE'] -- The string identifying the server, which is given in the header information when responding to the request. Such as Microsoft-IIS/6.0
7, $_SERVER['REQUEST_METHOD'] -- the request method when accessing the page. For example: "GET", "HEAD", "POST", "PUT".
8. $_SERVER['QUERY_STRING'] -- the query string (the content after the first question mark ? in the URL).
9. $_SERVER['DOCUMENT_ROOT'] -- The document root directory where the currently running script is located. Defined in the server configuration file. Such as E:server
10, $_SERVER['HTTP_ACCEPT'] -- the content of the Accept: header information of the current request.
11. $_SERVER['HTTP_ACCEPT_CHARSET'] -- The content of the Accept-Charset: header of the current request. For example: "iso-8859-1,*,utf-8".
12. $_SERVER['HTTP_ACCEPT_ENCODING'] -- The content of the Accept-Encoding: header of the current request. For example: "gzip".
13. $_SERVER['HTTP_ACCEPT_LANGUAGE'] -- The content of the Accept-Language: header information of the current request. For example: "en".
14. $_SERVER['HTTP_CONNECTION'] -- The content of the Connection: header information of the current request. For example: "Keep-Alive".
15. $_SERVER['HTTP_HOST'] -- The content of the Host: header information of the current request.
16. $_SERVER['HTTP_REFERER'] -- URL address of the previous page linked to the current page.
17. $_SERVER['HTTP_USER_AGENT'] -- Returns the browser information used by the user. This information can also be obtained using get_browser().
18, $_SERVER['HTTPS'] -- If accessed through https, it is set to a non-empty value, otherwise it returns off.
19, $_SERVER['REMOTE_ADDR'] -- The user who is browsing the current page IP address.
20. $_SERVER['REMOTE_HOST'] -- The host name of the user who is browsing the current page. Reverse domain name resolution is based on the user's REMOTE_ADDR. For example, the local test returns 127.0.0.1
21, $_SERVER['REMOTE_PORT'] -- the port used by users to connect to the server. I failed the test on this machine, I don’t know why.
22. $_SERVER['SCRIPT_FILENAME'] -- The absolute path name of the currently executing script. For example, return E:serverindex.php
23, $_SERVER['SERVER_ADMIN'] -- This value indicates the SERVER_ADMIN parameter in the Apache server configuration file. If the script is running on a virtual host, this value is the value of that virtual host
24, $_SERVER['SERVER_PORT'] -- the port used by the server. Default is "80". If using SSL secure connection, this value is the HTTP port set by the user.
25. $_SERVER['SERVER_SIGNATURE'] -- A string containing the server version and virtual host name.
26. $_SERVER['PATH_TRANSLATED'] -- The base path of the file system (not the document root directory) where the current script is located. This is the result after the server has been imaged from a virtual to real path. Apache 2 users can define PATH_INFO using AcceptPathInfo On in httpd.conf.
27. $_SERVER['SCRIPT_NAME'] -- Contains the path of the current script. This is useful when the page needs to point to itself. __FILE__ contains the absolute path and file name of the current file (such as an include file).
28, $_SERVER['REQUEST_URI'] -- The URI required to access this page. For example, "/index.html".
29, $_SERVER['PHP_AUTH_DIGEST'] -- When running as an Apache module, during the HTTP Digest authentication process, this variable is set to the "Authorization" HTTP header content sent by the client (for further authentication operations ).
30, $_SERVER['PHP_AUTH_USER']--When PHP is running in Apache or IIS (PHP 5 is ISAPI) module mode, and the HTTP authentication function is being used, this variable is the username entered by the user.
31. $_SERVER['PHP_AUTH_PW'] -- When PHP is running in Apache or IIS (PHP 5 is ISAPI) module mode and the HTTP authentication function is being used, this variable is the password entered by the user.
32. $_SERVER['AUTH_TYPE']--When PHP is running in Apache module mode and the HTTP authentication function is being used, this variable is the authentication type.