Oletetaan, että minulla on jokin tämän kaltainen array
aukioloaikojen hakemisen jälkeen tietokannasta:
Miten saisin tiivistettyä peräkkäisten päivien aukioloajat simppelisti siten, että lopputuloksena olisi:
$ajat = array("ma"=>array(10,18),"ti"=>array(10,18),"ke"=>array(10,18),"to"=>array(9,15)); $tiivis = array(); $edAika = null; foreach ($ajat as $pv => $aika) { if ($edAika != $aika) { if ($edAika != null) $tiivis[$ekaPv.(($ekaPv==$vikaPv)?'':('-'.$vikaPv))] = $edAika; $ekaPv = $pv; $edAika = $aika; } $vikaPv = $pv; } $tiivis[$ekaPv.(($ekaPv==$vikaPv)?'':('-'.$vikaPv))] = $edAika;
Tattista, sehän tuntuu toimivan!
Ei olisi omat taidot taas tähänkään riittänyt.
Aihe on jo aika vanha, joten et voi enää vastata siihen.