可以使用递归函数来遍历多维数组,将空值去除。
以下是一个示例代码:
function removeEmptyValues(&$array) {
foreach ($array as $key => &$value) {
if (is_array($value)) {
removeEmptyValues($value);
} else {
if (empty($value)) {
unset($array[$key]);
}
}
}
}
使用示例:
$array = array(
'name' => 'John',
'age' => '',
'address' => array(
'street' => '123 Main St',
'city' => '',
'state' => 'CA'
)
);
removeEmptyValues($array);
print_r($array);
输出结果:
Array
(
[name] => John
[address] => Array
(
[street] => 123 Main St
[state] => CA
)
)
在示例中,递归函数removeEmptyValues
遍历多维数组,如果值是一个数组,则递归调用该函数继续遍历。如果值是一个空值,则使用unset
函数将其从数组中删除。最终,只剩下非空值的数组。