2012-01-13 180 views
6

如何測試一個數組是否包含至少一個元素(而不僅僅是一個空數組$myarray = array();)?如何測試數組是否至少包含一個元素

有沒有一種方法?

例如

if ($myarray) { } 

if (count($myarray)) { } 

if (count($myarray) > 0) { } 

或者是否有錯誤的方法?

回答

15

至少1元這將是:

if (!empty($myarray)) {} 
+0

如果數組至少包含1個項目,則返回true。 – 2012-01-13 23:50:40

+0

謝謝!它非常簡單但有用。 – technophyle 2015-08-13 19:42:29

5

也許檢查 -emptiness via empty()

以下的事情被認爲是空的:

  • 「」(空字符串)
  • 0(0作爲整數)
  • 0.0(0爲float)
  • 「0」(0作爲字符串)
  • NULL
  • FALSE
  • array()(空陣列)
  • var $ var; (變量聲明,但沒有一類的值)
if (!empty($myarray)) { 
    // 
} 

但我不知道,如果有一個規範的方式做到這一點; php可能會遵循TMTOWTDI

+0

相反:'!empty($ myArray)' – 2012-01-13 23:47:09

+0

我會說'!empty($ array)' – 2012-01-13 23:47:33

+0

@miku呃,這可能是一個問題' TIMTOWTDIBSCINABTE' so'empty()':) – PeeHaa 2012-01-14 00:05:17

2

我相信if(!empty($myarray))工作過。這將意味着你不會跑w/e如果你得到array([0] => '')

+0

這是什麼意思?如果你得到數組([0] =>'')''這意味着你不會運行w/e? – PeeHaa 2012-01-13 23:53:34

相關問題