可以使用递归函数来处理多维数组中的空值。
以下是一个示例代码:
function removeEmptyValues(&$array) {
foreach ($array as $key => &$value) {
if (is_array($value)) {
removeEmptyValues($value);
} elseif (empty($value)) {
unset($array[$key]);
}
}
}
$array = array(
'key1' => 'value1',
'key2' => '',
'key3' => array(
'subkey1' => 'subvalue1',
'subkey2' => '',
'subkey3' => array(
'subsubkey1' => '',
'subsubkey2' => 'subsubvalue2',
)
)
);
removeEmptyValues($array);
print_r($array);
运行上述代码后,输出结果如下:
Array
(
[key1] => value1
[key3] => Array
(
[subkey1] => subvalue1
[subkey3] => Array
(
[subsubkey2] => subsubvalue2
)
)
)
通过递归调用 removeEmptyValues
函数,可以在多维数组中删除所有空值。注意在处理子数组时,需要使用引用 &$value
,这样才能修改原始数组。