波纹管是我的数组,包含空值的
Array
(
[2] => Array
(
[1] => 2
[2] => 4
[3] => 9
)
[3] => Array
(
[1] => 4
[2] => 6
[3] =>
)
[4] => Array
(
[1] => 4
[2] => 6
[3] => 7
)
[5] => Array
(
[1] => 2
[2] => 4
[3] =>
)
[6] => Array
(
[1] =>
[2] => 6
[3] => 8
)
)
下面是我的另一个数组,包含主索引3,5,6现在我希望下面数组的值(3,3,3)我想放上面包含空值的数组请指导我如何根据主索引将下面的数组值放在上面的数组空空间
Array
(
[3] => Array
(
[2] => 3
)
[5] => Array
(
[4] => 3
)
[6] => Array
(
[2] => 3
)
)
所以在填充之后,我想要像下面这样的结果所以对于清关,我使用单引号来显示填充值
阵列([2] =>阵列([1] =>2[2] =>4[3] =>9)
[3] => Array
(
[1] => 4
[2] => 6
[3] => '3'
)
[4] => Array
(
[1] => 4
[2] => 6
[3] => 7
)
[5] => Array
(
[1] => 2
[2] => 4
[3] => ' 3'
)
[6] => Array
(
[1] => '3'
[2] => 6
[3] => 8
)
)
尝试这个
$array1 = [
2 => [1 => 2, 2=> 4, 3 => 9],
3 => [1 => 4, 2=> 6, 3 => null],
4 => [1 => 4, 2=> 6, 3 => 7],
5 => [1 => 2, 2=> 4, 3 => null],
6 => [1 => null, 2=> 6, 3 => 8]
];
$array2 = [
3 => [2 => 3],
5 => [4 => 3],
6 => [2 => 3]
];
foreach($array1 as $key => $value) {
if(true === array_key_exists($key, $array2)) {
foreach($value as $innerKey => $innerValue) {
if(null === $innerValue) {
$array1[$key][$innerKey] = ''''.current($array2[$key]).'''';
}
}
}
}
var_dump($array1);
您可以尝试使用此
$nulls = [
2 => [1 => 2, 2=> 4, 3 => 9],
3 => [1 => 4, 2=> 6, 3 => null],
4 => [1 => 4, 2=> 6, 3 => 7],
5 => [1 => 2, 2=> 4, 3 => null],
6 => [1 => null, 2=> 6, 3 => 8] ];
$fills= [3 => [2 => 3],5 => [4 => 3],6 => [2 => 3]];
foreach ( $fills as $key => $val ) {
$nulls[$key][array_search('',$nulls[$key])] = array_values($val)[0];
}
var_dump($nulls);
这将在第一个数组上搜索空值。
CCD_ 1数组是具有空值的数组,$fills
数组是具有要填充的密钥的值的数组
这将循环$fills
数组,搜索$nulls
数组上的每个键,并查找空值