<?php
$a1 = Array
(
0 => (object) array
(
'time' => '03:00 PM - 04:30 PM',
'booked' => 3,
),
1 => (object ) array
(
'time' => '05:00 PM - 06:30 PM',
'booked' => 2
)
);
$a2 = Array
(
'0' => (Object) array
(
'time' => '03:00 PM - 04:30 PM',
'booked' => 3
),
'1' => (Object) array
(
'time' => '07:00 PM - 08:30 PM',
'booked' => 1
)
);
$a3 = array_merge($a1,$a2);
$r = [];
$keys = ['booked','booked_slotes'];
foreach($a3 as $v){
array_key_exists($v->time, $r)
?
($r[$v->time]->booked += $v->booked)
:
($r[$v->time] = $v);
}
print_r(array_values($r));
- Output for 7.1.25 - 7.1.32, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- Array
(
[0] => stdClass Object
(
[time] => 03:00 PM - 04:30 PM
[booked] => 6
)
[1] => stdClass Object
(
[time] => 05:00 PM - 06:30 PM
[booked] => 2
)
[2] => stdClass Object
(
[time] => 07:00 PM - 08:30 PM
[booked] => 1
)
)
preferences:
143.27 ms | 408 KiB | 5 Q