3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array1 = "144|aku|1!!!122|dia|2"; $array2 = "144|aku|1!!!211|dia|1"; $array1 = explode("!!!", $array1); $array2 = explode("!!!", $array2); Foreach($array1 as $val){ List($id, $name, $amount) = explode("|", $val); $result[$id] = ['name' => $name, 'amount' => $amount]; } Foreach($array2 as $val){ List($id, $name, $amount) = explode("|", $val); If(isset($result[$id])){ $result[$id]['amount'] += $amount; }Else{ $result[$id] = ['name' => $name, 'amount' => $amount]; } } Echo "Json string:\n"; $json = json_encode($result); Var_dump($json); Echo "\n\nback to array: \n"; Var_dump(json_decode($json, true));

preferences:
179.66 ms | 407 KiB | 5 Q