在寫程式的過程中經常會用到$_SERVER函數,有時候對變數不太瞭解就會造成很大的誤解,今天偶找了幾個小例子來說明一下常用到的四個變數的用法.
$_SERVER儲存當前伺服器資訊,其中有幾個值如下:
$_SERVER["QUERY_STRING"];
$_SERVER["REQUEST_URI"];
$_SERVER["SCRIPT_NAME"],
$_SERVER["PHP_SELF"];
常常容易混淆,以下通過執行個體詳解$_SERVER函數中QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF變數區別,掌握這四者之間的關係,便於在實際應用中正確擷取所需要的值,供參考.
1,$_SERVER["QUERY_STRING"]
說明:查詢(query)的字串
2,$_SERVER["REQUEST_URI"]
說明:訪問此頁面所需的URI
3,$_SERVER["SCRIPT_NAME"]
說明:包含當前指令碼的路徑
4,$_SERVER["PHP_SELF"]
說明:當前正在執行指令碼的檔案名稱
執行個體1,代碼如下:
$_SERVER["QUERY_STRING"] = “”
$_SERVER["REQUEST_URI"] = “/”
$_SERVER["SCRIPT_NAME"] = “/index.php”
$_SERVER["PHP_SELF"] = “/index.php”
執行個體2,代碼如下:
$_SERVER["QUERY_STRING"] = “tags/上傳″
$_SERVER["REQUEST_URI"] = “/?tags/上傳″
$_SERVER["SCRIPT_NAME"] = “/index.php”
$_SERVER["PHP_SELF"] = “/index.php”
執行個體3,代碼如下:
$_SERVER["QUERY_STRING"] = “tags/上傳/2”
$_SERVER["REQUEST_URI"] = “/index.php?tags/上傳/2”
$_SERVER["SCRIPT_NAME"] = “/index.php”
$_SERVER["PHP_SELF"] = “/index.php”
$_SERVER["QUERY_STRING"]擷取查詢語句,執行個體中可知,擷取的是?後面的值
$_SERVER["REQUEST_URI"] 擷取http://www.phpfensi.com後面的值,包括/
$_SERVER["SCRIPT_NAME"] 擷取當前指令碼的路徑,如:index.php
$_SERVER["PHP_SELF"] 當前正在執行指令碼的檔案名稱
總結一下:對於QUERY_STRING,REQUEST_URI,SCRIPT_NAME 和PHP_SELF,深入瞭解將有利於我們在$_SERVER函數中正確調用這四個值,通過執行個體詳解$_SERVER函數中 QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四個變數之間的區別.