天天看點

php empty() 判斷數組是否為空

empty() 函數 作用是判斷變量是否為空

$xx="";

if(empty($xx)){//TRUE

  echo "是空值";

}else{//FALSE

  echo "不是空值";

}

結果: echo "不是空值";

PHP判斷數組為空首選方法:

count($arr),size($arr); 

代碼如下:

$arr= array(""); 

echo count($arr); 

echo size($arr); 

//輸出1 

複制代碼代碼如下:

$arr= array(); 

echo count($arr); 

echo size($arr); 

//輸出0 

PHP判斷數組為空方法2:empty($arr); 

複制代碼代碼如下:

$arr= array(""); 

$result = empty($arr); 

//$result = false 

$arr = array(); 

$result = empty($arr); 

//$result = true 

這兩種方法足以應對簡單數組和多元數組是否為空的判斷問題,個人一般用empty()來做數組非空判斷,這樣感覺代碼看起來更容易了解。

判斷數組是否為空 使用這個函數就好了 count 如果輸出為0的話 那麼就這個數組就是空的的下面就是簡單的測試代碼了。php 判斷數組是否為空 代碼列子

複制代碼代碼如下:

<?php

$arr = array();

echo count($arr);

?>

輸出為 0 的話數組為空

PHP判斷數組為空方法2:empty($arr);

複制代碼代碼如下:

$arr= array(""); 

$result = empty($arr); 

//$result = false 

$arr = array(); 

$result = empty($arr); 

//$result = true

PHP判斷數組為空之一、for循環

最簡單也是最直接的方法,用for循環來周遊數組。對于已知維數的數組可以判斷,但如果是未知的多元數組,該怎麼辦?

PHP判斷數組為空之二、implode();

用implode()将數組輸出為字元串,判斷輸出的字串是否為空。初看上去似乎是個不錯的方法,可惜跟上一點一樣,對于二維以上數組就不行了。舉個例子:

複制代碼代碼如下:

$arr= array(array(),array(),arr(www.jb51.net)ay());

$str = implode(',',$arr);

if(empty($str)) echo "空";

else echo "非空";

很明顯$arr是個含有三個空數組的二維數組,應該也算是空的,可是輸出的确是非空。判斷失敗。

PHP判斷數組為空之三、count();

複制代碼代碼如下:

$arr= array("","","");

echo count($arr);

PHP判斷數組為空之四、in_array('', $arr));

複制代碼代碼如下:

$arr= array("d","s","");

echo in_array('', $arr);

這個隻能說明數組中有空的元素,不能證明數組是空的。很明顯也不行。

PHP判斷數組為空之五、empty();

這個cpyeh覺得跟前面幾種方法差不多

複制代碼代碼如下:

$arr= array("","","");

if(empty($arr)) echo "空";

else echo "非空";