Home > Backend Development > PHP Tutorial > Detailed explanation of php functions getenv(), putenv() and $_SERVER

Detailed explanation of php functions getenv(), putenv() and $_SERVER

小云云
Release: 2023-03-20 18:22:02
Original
8770 people have browsed it

getenv gets the system environment variables

Syntax: string getenv(string varname);-----------The parameter varname should be $_SERVER (server super global variable array ), or use putenv("new=very new") to define new as an environment variable, so new as a parameter will have the value very new
Return value: String
Function type: PHP system function
Content description: If the environment variable varname is obtained correctly, the variable value will be returned. Returns false on failure.
Usage Example
The following example can obtain the URL of the machine where the user's browser is located

<?
$ip = getenv(“REMOTE_ADDR”);
?>
Copy after login

$_SERVER is the server's super global variable array. Use $_SERVER['REMOTE_ADDR'] to also obtain the client's IP address. .

The difference between the two is that getenv does not support php running in IIS isapi mode

putenv configures system environment variables

PHP putenv() syntax: void putenv (string setting);

Return value: None

Function type: PHP system function

Content description: This function is used to configure system environment variables.

Usage example:

Configure the environment variable NLS_LANG required for Oracle database, and the returned data contains Chinese BIG5 code.

<?
putenv("NLS_LANG=american_taiwan.zht16big5");
?>
Copy after login

Comprehensive example of putenv() and getenv()

<?php
putenv("new=very new");$is_new = getenv("new");$new="bu shi";
echo $is_new,"<br />",$new;
?>
Copy after login

Output:

very new

So from the above we can know that there is no need to be afraid of errors in our code The environment variable defined here has the same name as the environment variable defined by putenv. In this example, putenv("new=very new"); and $new="bu shi"; -----new will not go wrong.

Detailed explanation of PHP server variable $_SERVER:

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 by me after debugging for easy understanding.

Please respect the fruits of labor when reprinting, haha, physical work is not easy to do.

Server variable $_SERVER Detailed explanation:

1, $_SESSION['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 string of query (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. For example, 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 information 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 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, E:\server\index.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 (in order to 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 user name 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.

Related recommendations:

php function getenv() and putenv() and $_SERVER_PHP tutorial

The above is the detailed content of Detailed explanation of php functions getenv(), putenv() and $_SERVER. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template