PHP kod:
<?php
// izmisli vise podataka :-) $data['42'] = '[{"id":"2","domacin":"Man City","gost":"Liverpool","tip":"1","kvota":"1.8","status":"Dobitan"},{"id":"4","domacin":"Inter","gost":"Milan","tip":"1","kvota":"2.5","status":"Aktivan"}]'; $data['43'] = '[{"id":"2","domacin":"Man City","gost":"Liverpool","tip":"1","kvota":"1.8","status":"Aktivan"},{"id":"4","domacin":"Inter","gost":"Milan","tip":"1","kvota":"2.5","status":"Dobitan"}]'; $data['44'] = '[{"id":"2","domacin":"Man City","gost":"Liverpool","tip":"1","kvota":"1.8","status":"Aktivan"},{"id":"4","domacin":"Inter","gost":"Milan","tip":"1","kvota":"2.5","status":"Dobitan"}]';
foreach ($data as $listKey => $listItem) { $tickets = json_decode($listItem, true);
$dobitan = 0; $gubitan = 0; $aktivan = 0;
// za sve tickete u listi ticketa provjeri statuse foreach ($tickets as $ticket) { switch ($ticket['status']) { case 'Gubitan': $gubitan++; break; case 'Aktivan': $aktivan++; break; case 'Dobitan': $aktivan++; break; } }
// output switch (true) { case $gubitan > 0: echo "ID: ". $listKey ." - Gubitan\n"; break; case ($aktivan == 0 && $gubitan == 0): echo "ID: ". $listKey ." - Dobitan\n"; break; case $aktivan > 0: echo "ID: ". $listKey ." - Aktivan\n"; break; } } echo "\n";
Ovako nesto. Kolko vidim gore si outputao za svaki subset unutar jedne liste (npr. ove id 45), a shvatio sam da moras prebrojat sve statuse unutar jedne liste i outputat samo jednom za tu listu. Ili daj veci set podataka za testiranje i objasni malo bolje :-)
|