3v4l.org

run code in 300+ PHP versions simultaneously
<?php $result='[{"receipt": "abc","ordered":{"food":"set A","drink":"coke"}},{"receipt":"123","ordered":{"food":"set E","drink":"pepsi"}},{"receipt":"abc","ordered":{"food":"set B","drink":"7-up"}}]'; $jsondecoded = json_decode($result); for ($i = 0; $i < sizeof($jsondecoded); $i++) { $ordered[] = json_encode($jsondecoded[$i]->{'ordered'}); //$ordered[$i] = str_replace("", '', $ordered[$i]); $ordered[$i] = trim($ordered[$i], '"'); //$eatway[] = $jsondecoded[$i]->{'diningway'}; $receipt[] = $jsondecoded[$i]->{'receipt'}; } for ($j = 0; $j < sizeof($ordered); $j++) { $food[] = json_decode($ordered[$j])->{'food'}; $drink[] = json_decode($ordered[$j])->{'drink'}; } $out = array(); for ($i = 0; $i < sizeof($receipt); $i++) { if(empty($out)){ $out[0]->{'receipt'} = $receipt[$i]; $out[0]->{'order'} = '('.$food[$i].')'; $checkint[] = 0; } else if (!empty($out)){ for ($j = 0; $j < sizeof($out); $j++) { if ($receipt[$i]==$out[$j]->{'receipt'} && in_array($i, $checkint)) { $out[$j]->{'order'} = $out[$j]->{'order'}.','.'('.$food[$i].')'; } else if ($j + 1 == sizeof($out)) { $out[sizeof($out)]->{'receipt'} = $receipt[$i]; $out[sizeof($out)-1]->{'order'} = '('.$food[$i].')'; } } } } for ($i = 0; $i < sizeof($out); $i++) { echo $out[$i]->{'receipt'}; echo $out[$i]->{'order'}; } ?>

preferences:
28.96 ms | 402 KiB | 5 Q