查找空数组索引函数


Find empty array indexes function

我正在检查数组值是否为空或是否如下所示:

长格式:

$empty = array();
foreach($array as $value)
   if(empty($value)) $empty[] = $value;

预期功能:

$empty = array_empty_values($array);

有没有像array_empty_values()这样的函数可以查找空数组索引?

如果您想检查并删除空数组元素,可以在php array_filter()中检查此函数

array_filter接受一个数组作为输入,并删除所有等于null/0/flase

的元素

使用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
)

您需要一个包含键的数组,而不是包含值的数组。因为这些值是空的。

/**
 * 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;
}