要删除三维数组中的空值,可以使用递归函数来实现。以下是一个示例代码:
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
)
)
)
可以看到,空值已经被成功删除。