<?php
$arrayA = array(
0 =>
array(
'id' => 4701,
'start' => '2018-04-15 17:00:00',
'start2' => '2018-04-15 19:00:00',
'expiry' => '2018-04-16 01:00:00',
'expiry2' => '2018-05-16 03:00:00',
'threat' => 'Rain',
'level' => 2,
'last_updated' => '2018-05-09 14:11:54',
'created' => '2018-04-12 15:05:50',
'county' => 'Luzerne',
'state' => 'Pennsylvania',
'image' => '15238041824facec0b183878da58e007b4b6.png',
),
1 =>
array(
'id' => 4947,
'start' => '2018-04-26 11:11:00',
'start2' => '2018-04-26 15:10:00',
'expiry' => '2018-04-30 23:00:00',
'expiry2' => '2018-05-30 08:00:00',
'threat' => 'Thunderstorm',
'level' => 3,
'last_updated' => '2018-05-09 12:33:25',
'created' => '2018-04-26 15:11:45',
'county' => 'Yellowstone',
'state' => 'Montana',
'image' => '1524755505c1beae47ebbb285beaa6a1c672.png',
),
2 =>
array(
'id' => 4947,
'start' => '2018-04-26 11:11:00',
'start2' => '2018-04-26 15:10:00',
'expiry' => '2018-04-30 23:00:00',
'expiry2' => '2018-05-30 08:00:00',
'threat' => 'Thunderstorm',
'level' => 3,
'last_updated' => '2018-05-09 12:33:25',
'created' => '2018-04-26 15:11:45',
'county' => 'Luzerne',
'state' => 'Pennsylvania',
'image' => '1524755505c1beae47ebbb285beaa6a1c672.png',
),
);
#print_r($arrayA);
#echo "\n\r";
#echo "Looking to turn the above array into the array below:\n\r";
#print_r($arrayB);
$result = [];
foreach ($arrayA as $row) {
$id = $row['id'];
if (!isset($result[$id])) {
$result[$id] = $row;
$result[$id]['affected_locations'] = [];
}
$result[$id]['affected_locations'] []= $row;
}
$arrayB = array_values($result);
print_r($arrayB);
preferences:
57.15 ms | 402 KiB | 5 Q