超級全域變數是PHP中非常重要的概念,它可以在程式中存取到任何地方的變數值,而無需使用函數或其他方法來傳遞變數。在本文中,我們將討論PHP程式設計中常用的幾個超級全域變數。
$_GET是用來收集HTML表單提交的資料的超級全域變數之一。透過$_GET,我們可以取得指定URL中的查詢字串參數,這些參數可以被用於頁面的資料過濾或資料查詢等操作。
例如,當使用者在表單中輸入使用者名稱和密碼後,表單提交的URL可能如下所示:
http://example.com/login.php?username =xxx&password=yyy
在這種情況下,我們可以透過$_GET來取得使用者名稱和密碼的值,如下所示:
$username = $_GET['username']; $password = $_GET['password'];
與$_GET類似,$_POST也是用來收集HTML表單提交的資料的超級全域變數。但不同的是,$_POST用於POST請求方式,它可以避免資料儲存在URL中,從而更加安全。
同樣的例子,這次表單使用的是POST方法:
<form method="POST" action="login.php"> <input type="text" name="username"> <input type="password" name="password"> <button type="submit">登录</button> </form>
這個表單的資料將會被提交到login.php,在login.php中,我們可以用$_POST來取得表單中的資料:
$username = $_POST['username']; $password = $_POST['password'];
$_REQUEST包含了$_GET、$_POST和$_COOKIE的所有內容,可以同時取得來自GET和POST請求以及cookie中的資料。雖然它可以得到所有的數據,但是由於安全性問題,建議在使用$_REQUEST時需要進行資料過濾,以避免請求偽造和SQL注入等安全問題。
$_SESSION是PHP中用於儲存使用者會話資料的超級全域變數之一。透過$_SESSION,我們可以在使用者存取一個頁面後,將一些使用者資料儲存到伺服器端,並在後續的存取中繼續使用這些資料。
在使用$_SESSION時,我們需要先啟動會話,並透過$_SESSION陣列來操作會話中的資料。例如,如下程式碼段可以將使用者ID儲存到$_SESSION中:
session_start(); $_SESSION['user_id'] = 1234;
在後續的請求中,我們可以使用以下程式碼取得保存在$_SESSION中的使用者ID:
session_start(); $user_id = $_SESSION['user_id'];
$_COOKIE是PHP中用來儲存HTTP Cookie的超級全域變數之一。 HTTP Cookie是由伺服器透過HTTP回應頭髮送到客戶端的一些鍵值對訊息,可以用來儲存一些目前會話相關的資料。
不同於$_SESSION中的資料保存在伺服器端,$_COOKIE中的資料保存在客戶端,它可以被客戶端透過JavaScript等技術讀取。
可以透過以下程式碼來取得$_COOKIE中的資料:
$user_id = $_COOKIE['user_id'];
總結
超級全域變數是PHP程式設計中非常重要的一部分,出現了上述5種。在使用這些變數時,應該遵循資料過濾和安全性等規則,以避免遭受安全攻擊。在實際使用中,建議按需選擇適合自己的變數來編寫程式。
以上是PHP程式設計有哪些常見的超級全域變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!