Home > Article > Backend Development > PHP super global variables_PHP tutorial
PHP super global variables
$GLOBALS
Contains a reference to a variable that is globally valid in each current script. The keys of this array are labeled with the names of global variables. The $GLOBALS array exists since PHP 3.
$_SERVER
Variables are set by the web server or are directly associated with the execution environment of the current script. Similar to the old $HTTP_SERVER_VARS array (still valid, but deprecated).
$_GET
Variables submitted to the script via the HTTP GET method. Similar to the old $HTTP_GET_VARS array (still valid, but deprecated).
$_POST
Variables submitted to the script via the HTTP POST method. Similar to the old $HTTP_POST_VARS array (still valid, but deprecated).
$_COOKIE
Variables submitted to the script via the HTTP Cookies method. Similar to the old $HTTP_COOKIE_VARS array (still valid, but deprecated).
$_FILES
Variables submitted to the script via HTTP POST file upload. Similar to the old $HTTP_POST_FILES array (still valid, but deprecated). See POST method upload for details.
$_ENV
Variables submitted to the script by the execution environment. Similar to the old $HTTP_ENV_VARS array (still valid, but deprecated).
$_REQUEST
Variables submitted to scripts via GET, POST and COOKIE mechanisms, so this array is not trustworthy. The presence, absence, and order of all variables contained in this array are defined according to the variables_order configuration directive in php.ini. This array does not directly emulate earlier versions of PHP 4.1.0. See .
******As of PHP 4.3.0, the file information in $_FILES no longer exists in $_REQUEST. *****
$_SESSION
Variables currently registered for the script session. Similar to the old $HTTP_SESSION_VARS array (still valid, but deprecated).
Detailed explanation of server variable $_SERVER:
1. $_SERVER ['PHP_SELF'] -- Get the file name of the currently executing script
2. $_SERVER['SERVER_PROTOCOL'] -- The name and version of the communication protocol when requesting the page. 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, 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 of the current request.
11. $_SERVER['HTTP_ACCEPT_CHARSET'] -- The content of the Accept-Charset: header information 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. Not all user agents (browsers) will set this variable, and some can also modify HTTP_REFERER manually. Therefore, this variable is not always true.
17. $_SERVER['HTTP_USER_AGENT'] -- Returns the browser information used by the user. A typical example is: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586). 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 IP address of the user who is browsing the current page.
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 specifies the SERVER_ADMIN parameter in the Apache server configuration file. If the script is running on a virtual host, the value is that 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 operate).
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.
Detailed explanation of PHP predefined global variable $_FILES
Variables submitted to the script via HTTP POST file upload. Similar to the old $HTTP_POST_FILES array (still valid, but deprecated). See POST method upload for details.
The contents of the $_FILES array are as follows:
$_FILES['userfile']['name']--- The original name of the client machine file.
$_FILES['userfile']['type'] ---The MIME type of the file, which requires the browser to provide support for this information, such as "image/gif".
$_FILES['userfile']['size']--- The size of the uploaded file, in bytes.
$_FILES['userfile']['tmp_name']---The temporary file name stored on the server after the file is uploaded.
$_FILES['userfile']['error']---error code related to the file upload. ['error'] was added in PHP 4.2.0.
Note: Before PHP 4.1.0, the name of this array was $HTTP_POST_FILES, which is not an automatic global variable like $_FILES. PHP 3 does not support the $HTTP_POST_FILES array.