3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = json_decode('[ { "nsr": "000086310", "type": "3", "date": "2015-07-18", "time": "00:06", "pis": "12138790985" }, { "nsr": "000086313", "type": "3", "date": "2015-07-18", "time": "00:33", "pis": "16073736879" }, { "nsr": "000086316", "type": "3", "date": "2015-07-18", "time": "00:58", "pis": "16634402451" }, { "nsr": "000086316", "type": "3", "date": "2015-07-19", "time": "00:58", "pis": "98127981729" }, { "nsr": "000086316", "type": "3", "date": "2015-07-19", "time": "00:58", "pis": "12398712938" } ]', true); $result = []; foreach ($array as ['date' => $d, 'pis' => $p]) { if (!isset($ref[$d])) { $ref[$d] = ['date' => $d]; $result[] =& $ref[$d]; } $ref[$d]['pis'][] = $p; } var_export($result);

preferences:
29 ms | 405 KiB | 5 Q