检查数组是否为空(不计入键)

时间:2017-01-10 14:13:49

标签: php arrays is-empty

我无法了解如何检查数组是否为空。我知道empty()表示100%为空,包括密钥。但是当有(在这种情况下)没有产品时,我的数组看起来像这样:

Array
(
    [0] => 
)

如何检查数组是否为空?最好只针对这个确切的数组列表"因为在一个有产品的页面上我也有[0] =>作为第一个值,我将其过滤掉(但这是在我需要检查空数组之后)。

编辑:

if(empty(array_values($relatedcr))){
    echo 'empty';
}else{
    echo 'not empty';
}

4 个答案:

答案 0 :(得分:3)

将值作为数组获取,然后检查它。

empty(array_values($array));

这是一个测试代码:

<?php 
$array=[1];
unset($array[0]);
var_dump($array);
var_dump(empty($array));
var_dump(['']);
var_dump(empty(['']));

输出: demo here

array(0) {
}
bool(true)
array(1) {
  [0]=>
  string(0) ""
}
bool(false)

答案 1 :(得分:0)

这样:

foreach ($playerlist as $key => $value) {
        if (empty($value)) { //checking if array value are empty
           unset($playerlist[$key]);
        }
    }

答案 2 :(得分:0)

你可以使用array_filter然后检查空

  $b = array_filter($array1);

    if (empty($b))
    {
        echo "empty";
    }
    else
    {
        echo "not empty";
    }

答案 3 :(得分:0)

<?php
$user= [
    "name"=> "",
    "age" => ""
];
$data = array_filter($user);
echo (empty($data)) ? "empty" : "not empty";

输出:空