在 PHP 中,empty()
和 isset()
都用于檢查變量是否存在或為空,但它們之間有一些關鍵區別。
isset()
函數:
isset()
用于檢查一個變量是否已經設置,如果一個變量已經被設置且其值不為 NULL,那么 isset()
返回 TRUE,否則返回 FALSE。換句話說,如果變量不存在、未設置或者值為 NULL,isset()
會返回 FALSE。示例:
$var = NULL;
if (isset($var)) {
echo "變量已設置";
} else {
echo "變量未設置";
}
// 輸出:變量未設置
empty()
函數:
empty()
用于檢查一個變量是否為空,如果一個變量不存在、未設置或者其值為空(如:0、0.0、‘0’、NULL、FALSE 或空字符串),那么 empty()
返回 TRUE,否則返回 FALSE。示例:
$var = 0;
if (empty($var)) {
echo "變量為空";
} else {
echo "變量非空";
}
// 輸出:變量為空
總結:
isset()
主要用于檢查變量是否設置,而不考慮其值。empty()
主要用于檢查變量是否為空,包括未設置或值為空的情況。isset()
;當你需要確保變量不為空(包括可能未設置的情況)時,使用 empty()
。