1
我有2多维数组2多维数组:映射通过键使用PHP
$array1 = array(
[0]=>array(
[items]=>array(
'item_code'=>'12345',
'price'=>'145'
)
),
[1]=>array(
[items]=>array(
'item_code'=>'54321',
'price'=>'260'
)
),
);
$array2 = array(
[0]=>array(
[A]=>'12345'
[B]=>'IMG'
),
),
[1]=>array(
[A]=>'54321'
[B]=>'PNG'
),
),
);
我试图两个阵列映射,并添加一个“类型”元素,其等于“B”在$数组2到阵列1列,成为一个新的数组:
$arrayRes = array(
[0]=>array(
[items]=>array(
'item_code'=>'12345',
'price'=>'145',
'type' => 'IMG'
),
),
[1]=>array(
[items]=>array(
'item_code'=>'54321',
'price'=>'260',
'type' => 'PNG'
),
),
);
这就是我想:
foreach ($array1 as $arr) {
foreach ($arr as $key1 => $value1) {
$items = $value1['items'];
foreach ($items as $item=>$itemValue){
foreach ($array2 as $key2 => $value2){
if($itemValue['item_code'] == $value2['A']){
$items['type'] = $value2['B'];
}
}
}
}
}
但它一直换货政...产生错误'非法字符串偏移'项目''。任何人都可以注意到我做错了什么?
$项目= $值1; – deg