如果数组没有元素或所有元素都没有长度,则验证数组为“空”

问题描述 投票:0回答:1

我有这个 JSON 数据:

["","","","","","",""]

解码后变成:

Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => )

当我尝试在 PHP 中使用 empty() 进行验证时,它仍然返回

true
。我知道如果该数组只是空数组,PHP 会接受该数组为
FALSE
Array()

其实我是想把那些空数组替换成空字符串。

如何将带有空字符串的数组视为“完全空”数组?

php arrays is-empty
1个回答
2
投票

过滤一下

$array=array_filter($array);

在不提供任何进一步选项的情况下,这将从数组中删除所有空元素,因此在这种情况下您的数组将变为 0 长度,并且您正在寻找的它将变为 true 空。

$array=json_decode('["","","","","","",""]');
$array=array_filter($array);
var_dump(empty($array));  // true

小提琴

如果您不想对原始数组进行任何更改,而只想检查所有值是否为空,您可以这样做

var_dump(empty(array_filter($array))); // true. Original array remains same
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.