Programming in PHP programming to obtain the current url address and server variables, mainly using the following global variables: $_server["query_string"],$_server["request_uri"],$_server["script_name"],$_server["php_self"] 1,$_server["query_string"] Description: Query string 2.$_server["request_uri"] Description: URI required to access this page 3.$_server["script_name"] Description: Contains the path of the current script 4.$_server["php_self"] Description: The file name of the currently executing script Example: 1. http://bbs.it-home.org/ (open the homepage directly) result: $_server["query_string"] = "" $_server["request_uri"] = "/" $_server["script_name"] = "/index.php" $_server["php_self"] = "/index.php" 2. http://bbs.it-home.org/?p=222 (with query) result: $_server["query_string"] = "p=222" $_server["request_uri"] = "/?p=222" $_server["script_name"] = "/index.php" $_server["php_self"] = "/index.php" 3. http://bbs.it-home.org/index.php?p=222&q=biuuu result:
Example 2:
The similarities and differences of these variables or functions. Suppose there is a request address: http://localhost:8080/test.php/age=20 The full path of test.php is: d:/server/www/example/test.php 1), getcwd() You will get the directory where the page file requested by the browser is located. That is, the directory where the test.php file is located: d:/server/www/example/, If require or include statements are executed in test.php, such as inculde("test_dir/test2.php"), Then the getcwd() function in test2.php will also return the directory where test.php is located. 2)、__file__ A magic variable that can be used to get the full path of the file where the __file__ variable is located. For example: __file__ in test.php will get d:/server/www/example/test.php, __file__ in test_dir/test2.php will get d:/server/www/example/test_dir/test2.php 3), $_server["script_filename"] Will get the full path to the page file requested by the browser. Using $_server["script_name"] in test.php and test_dir/test2.php will get d:/server/www/example/test.php. 4), $_server["script_name"] Will get the file name of the page file requested by the browser. Note: Unlike $_server["script_name"], this variable only gets the file name and does not include the path. Using $_server["script_name"] in test.php and test_dir/test2.php will result in test.php. Of course, executing basename($_server["script_filename"]) in test.php and test_dir/test2.php is the same as $_server["script_name"]. Execute realpath("test.php") in test.php and test_dir/test2.php and the result will be the same as $_server["script_filename"]. 5), $_server["php_self"] The file name of the page requested by the browser will be obtained, and the content after the question mark ? will be stripped off. Note: the path is not included. For example, request http://localhost:8080/test.php?age=20&name=tom in the client, Then $_server["php_self"] of both test.php and test_dir/test2.php will get "test.php". "age=20&name=tom" is stripped off. And if the client requests http://localhost:8080/test.php/age=20&name=tom, Then $_server["php_self"] of both test.php and test_dir/test2.php will get "test.php/age=20&name=tom". 6), $_server["request_uri"] Will get the file name of the page requested by the browser, and all the content after the file name (note: the content after the pound sign # will be omitted), For example, request http://localhost:8080/test.php?age=20&name=tom in the client, Then $_server["reuest_uri"] of both test.php and test_dir/test2.php will get "test.php". "age=20&name=tom" is stripped off. And if the client requests http://localhost:8080/test.php/age=20&name=tom, Then $_server["request_uri"] of both test.php and test_dir/test2.php will get "test.php/age=20&name=tom". test.php:
|