<?php
$array1 = [
(object) [
"mem_tbl_id" => 1,
"m_name_e" => "Titus C.",
"member_id" => "KZI37M3025",
"gender" => "Male",
"m_number" => 9489455057,
"familyid" => "KZI54F2256"
],
(object) [
"mem_tbl_id" => 2,
"m_name_e" => "Baby Helen",
"member_id" => "KZI45M6402",
"gender" => "Female",
"m_number" => null,
"familyid" => "KZI54F2256"
],
(object) [
"mem_tbl_id" => 3,
"m_name_e" => "Satheesh Premananth T.",
"member_id" => "KZI69M3438",
"gender" => "Male",
"m_number" => null,
"familyid" => "KZI69F5619"
]
];
$array2 = [
(object) [
"mem_tbl_id" => 1,
"do_birth" => "1937-09-18"
],
(object) [
"mem_tbl_id" => 2,
"do_birth" => "1945-02-06"
],
(object) [
"mem_tbl_id" => 3,
"do_birth" => "1968-04-12"
]
];
$array3 = [
(object) [
"mem_tbl_id" => 3,
"do_baptism" => "1969-04-13"
]
];
$array4 = [
(object) [
"mem_tbl_id" => 1,
"do_confirm" => "1954-04-07"
],
(object) [
"mem_tbl_id" => 3,
"do_confirm" => "1990-04-29"
]
];
$result = [];
foreach ([$array1, $array2, $array3, $array4] as $objectArray) {
foreach ($objectArray as $obj) {
if (!isset($ref[$obj->mem_tbl_id])) {
$ref[$obj->mem_tbl_id] = $obj;
$result[] = $ref[$obj->mem_tbl_id];
} else {
foreach ($obj as $prop => $val) {
$ref[$obj->mem_tbl_id]->$prop = $val;
}
}
}
}
var_export($result);
preferences:
24.57 ms | 404 KiB | 5 Q