示例数组
$myArray[0] = array('23', null, '43', '12');
$myArray[1] = array(null, null, '53', '19');
$myArray[2] = array('12', '13', '14', null);
Run Code Online (Sandbox Code Playgroud)
所有空值都应该替换为0.我希望有人能够有效地执行此操作,这可能是我不知道的内置PHP函数.
Pas*_*TIN 18
你可以使用的array_walk_recursive功能,用一个回调函数,将取代null通过0.
例如,考虑您的数组是这样声明的:
$myArray[0] = array(23, null, 43, 12);
$myArray[1] = array(null, null, 53, 19);
$myArray[2] = array(12, 13, 14, null);
Run Code Online (Sandbox Code Playgroud)
注意:我猜你做了一个拼写错误,你的数组不只包含一个字符串,而是包含几个子元素.
你可以使用这种代码:
array_walk_recursive($myArray, 'replacer');
var_dump($myArray);
Run Code Online (Sandbox Code Playgroud)
使用以下回调功能:
function replacer(& $item, $key) {
if ($item === null) {
$item = 0;
}
}
Run Code Online (Sandbox Code Playgroud)
注意 :
===运算符进行比较
你会得到以下输出:
array
0 =>
array
0 => int 23
1 => int 0
2 => int 43
3 => int 12
1 =>
array
0 => int 0
1 => int 0
2 => int 53
3 => int 19
2 =>
array
0 => int 12
1 => int 13
2 => int 14
3 => int 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7105 次 |
| 最近记录: |