我正在尝试将两个阵列与一个公共列组合在一起。但是,并没有得到我想要的。请检查以下要求。
数组1
Array
(
[0] => stdClass Object
(
[fieldLabel] => fname
[uuid] => 27478
)
[1] => stdClass Object
(
[fieldLabel] => Lname
[uuid] => 6103
)
[2] => stdClass Object
(
[fieldLabel] => Country
[uuid] => 7350
)
[3] => stdClass Object
(
[fieldLabel] => check1
[uuid] => 23155
)
[4] => stdClass Object
(
[fieldLabel] => radio1
[uuid] => 15664
)
)
数组2
Array
(
[0] => stdClass Object
(
[uuid] => 27478
[value] => sai1
)
[1] => stdClass Object
(
[uuid] => 6103
[value] => sai2
)
[2] => stdClass Object
(
[uuid] => 7350
[value] => USA
)
[3] => stdClass Object
(
[uuid] => 23155
[value] => USA|India
)
)
我需要输出如下所示。两个阵列的“UUID”都很常见。如果第二个数组中没有值,则它应为空。
阵 ( [0] => stdClass对象 ( [fieldLabel] => FNAME [uuid] => 27478 [value] => sai1 )
[1] => stdClass Object
(
[fieldLabel] => Lname
[uuid] => 6103
[value] =>sai2
)
[2] => stdClass Object
(
[fieldLabel] => Country
[uuid] => 7350
[value] =>USA
)
[3] => stdClass Object
(
[fieldLabel] => check1
[uuid] => 23155
[value] =>USA|India
)
[4] => stdClass Object
(
[fieldLabel] => radio1
[uuid] => 15664
)
)
请提供您的建议。我怎样才能实现。
答案 0 :(得分:1)
您可以遍历这些数组并进行如下更改:
foreach ($array1 as &$a1val) {
$value = 0;
foreach ($array2 as $a2val) {
if($a1val->uuid == $a2val->uuid) {
$value = $a2val->value;
break;
}
}
$a1val->value = $value;
}
P.S。 :
答案 1 :(得分:0)
foreach($arr1 as $key1 => val1){
foreach($arr2 as $key2 => $val2){
if($val1['uuid'] == $val2['uuid']){
$arr1[$key1]['value'] = $val2['value'];
}
}
}
print_r($arr1); // this should give desire output