2013-07-01 38 views
1

驗證數組是否存在且不包含值的快捷方式是什麼?快捷方式驗證數組是否存在並且不包含值

出於某種原因,這看起來奇怪

$warning = array(); 

if (isset($warning) && empty($warning)) { 
    //go on... 
} else { 
    //either the array doesn't exist or it exist but contains values... 
} 

數組必須存在,且必須包含值

+0

'if($ warning){ ... }'? – Brian

+0

或只是'如果空($警告)','空'會反應如果變量如果未定義。 – budwiser

+0

@budwiser在繼續執行代碼之前數組必須存在......這將引發錯誤或繼續......不工作 – Marco

回答

2

如果您不知道變量是否已定義,那麼您將能夠獲得的最短時間。

如果你總是去定義數組($warning = array()),那麼你可以跳過isset這一步。

+0

我想沒有shorcut畢竟...我將不得不使用isset和空來確保數組存在並且不包含任何值... – Marco

+0

我爲您+1了Seth,因爲畢竟它轉身你認爲是對的;) – budwiser

+0

@budwiser謝謝:)並感謝教我,我錯了空! – Seth

-1
if ($warning) { 
    ... 
} 

這樣不是工作?當然,在檢查這個之前,你可能會分配一些東西給它。

附錄:

該代碼輸出no,甚至無需在陣列初始化。

if ($warning) echo "yes"; 
else echo "no"; 
+0

這應該可行,但如果變量未初始化,則會打印通知 - @Marko是計數? – pozs

+0

@pozs我不想讓代碼開始投擲通知......我只是想確保數組存在並且沒有值。 – Marco

+0

是不是在檢查之前將某物分配給您的陣列? – Brian

-1

首先檢查數組對象本身是否被分配,然後檢查各個索引是否分配。

相關問題