2010-06-24 42 views
1

我有這個問題不容忽視。我想檢測是否沒有會話變量並創建一個,但是如果已經存在並且是空的,我想讓它獨立。如何創建一個會話變量,如果事先不存在,但如果變量存在,但爲空

說我有,如果沒有檢測到這種創建我的會話變量:

if (!$_SESSION['second_prefix']){$_SESSION['second_prefix'] = "";} 

我應該如何改變這種不執行任何操作是$_SESSION['second_prefix']存在,但故意空白?

哈德森

+1

從技術上講,分配一個空字符串爲已設置爲空字符串的東西實際上是一個無操作... – Amber 2010-06-24 16:39:50

+1

@Amber:問題不在於「如何檢查一個變量是否爲空字符串」,它是「如何檢查變量是否已經設置」。初始化一個變量幾乎是不可能的。 – pinkgothic 2010-06-24 16:48:00

+0

@pinkgothic:OP如果尚未設置,則要初始化它。閱讀問題。 – Amber 2010-06-24 17:09:05

回答

8

試試這個:

if (!isset($_SESSION['second_prefix'])){ 
    $_SESSION['second_prefix'] = ""; 
} 
3

isset()會爲你做到這一點。

關於if(isset($blah))而不是if($blah)的重要之處在於,即使$ blah爲空,isset()也將爲true。換句話說,對於你的情況,$_SESSION['second_prefix']=""

然而,isset()函數將如果$等等爲NULL返回false。所以,雖然$blah=""沒問題,但是$blah=NULL將返回false爲isset($blah)

is_null()將檢查如果一個變量是NULL)

相關問題