在 PHP 中,超全局變量是那些可以在所有函數和類中直接訪問的變量。主要的超全局變量有:$GLOBALS
、$_SERVER
、$_GET
、$_POST
、$_COOKIE
和 $_SESSION
。這些變量無需初始化即可使用,因為它們會在請求開始時自動創建。
例如,要訪問 $_GET
超全局變量,你只需在函數或類中使用它,如下所示:
function get_name_from_get() {
$name = $_GET['name'];
echo "Hello, " . $name;
}
在這個例子中,$_GET['name']
是在 HTTP GET 請求的查詢參數中獲取的。當用戶訪問類似 example.com/test.php?name=John
的 URL 時,get_name_from_get()
函數將輸出 “Hello, John”。
需要注意的是,雖然這些超全局變量無需初始化即可使用,但在某些情況下,對它們進行初始化或檢查是否為空是一種良好的編程實踐。例如,在使用 $_SESSION
時,你可能希望先檢查會話是否已啟動:
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
if (!isset($_SESSION['user'])) {
$_SESSION['user'] = 'John';
}
在這個例子中,我們首先檢查會話是否已啟動,如果沒有,則使用 session_start()
函數啟動它。接下來,我們檢查 $_SESSION['user']
是否已設置,如果沒有,則將其設置為 “John”。