要删除三维数组中的空值,可以使用递归函数来实现。以下是一个示例代码:
function removeEmptyValues(&$array) {
foreach ($array as $key => &$value) {
if (is_array($value)) {
removeEmptyValues($value);
if (empty($value)) {
unset($array[$key]);
}
} else {
if (empty($value)) {
unset($array[$key]);
}
}
}
}
$threeDimensionalArray = [
[1, 2, 3],
[4, '', 6],
[[7, '', 9], [10, 11, '']],
];
removeEmptyValues($threeDimensionalArray);
print_r($threeDimensionalArray);
在上述代码中,removeEmptyValues
函数将传入的数组作为引用,在函数内部进行递归遍历,检查数组元素是否为空。如果是空数组或者空字符串,就使用 unset
函数将该元素从数组中删除。最后,打印处理后的三维数组。
执行上述代码后,将会得到以下输出:
Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 4 [2] => 6 ) [2] => Array ( [0] => Array ( [0] => 7 [2] => 9 ) [1] => Array ( [0] => 10 [1] => 11 ) ) )
可以看到,空值已经被成功删除。