我正在检查数组值是否为空,如下所示:
长格式:
$empty = array();
foreach($array as $value)
if(empty($value)) $empty[] = $value;
预期功能:
$empty = array_empty_values($array);
是否有像array_empty_values()
这样的函数找到空数组索引?
答案 0 :(得分:2)
如果要检查并删除空数组元素,可以在php array_filter()中检查此函数
array_filter 接受一个数组作为输入并删除所有等于 null / 0 / flase
的元素答案 1 :(得分:1)
使用array_filter php内置函数
function filter_empty($var) {
return empty($var);
}
$result_array = array_filter($your_array, "filter_empty");
$your_array = array(1,'2','3',false,'');
$result_array = array_filter($your_array, "filter_empty");
echo print_r($result_array, true);
将打印
Array
(
[3] =>
[4] =>
)
如果只需要索引,可以使用array_keys内置函数
echo print_r(array_keys($result_array), true);
将打印
Array
(
[0] => 3
[1] => 4
)
答案 2 :(得分:0)
您需要一个包含键的数组,而不是值。因为值是空的。
/**
* Get keys of empty array values
* @param array $array The array to check.
* @return array The keys of the empty values.
*/
array_empty_values($array) {
$empty = array();
foreach($array as $key => $value) {
if(empty($value)) {
$empty[] = $key;
}
}
return $empty;
}