10. april 2010 - 17:20
Der er
6 kommentarer og 2 løsninger
Dage mellem datoer
Hejsa. Jeg tænkte på om man kunne få vist hvilke dage der er mellem 2 forskellige datoer? For eks. fra 30. april 2010 til 3. maj 2010 Der vil der jo være: - 30. april - 1. maj - 2. maj - 3. maj Kan man gøre det på nogen måde? eventuelt samle det i et array? Hav en god lørdag.
Annonceindlæg fra Infor
10. april 2010 - 18:41
#1
Ja, det kan man godt - f.eks.... <?php $str_dagX = "2010-09-25"; $str_dagY = "2011-01-06"; $arr_dagXarr = explode("-", $str_dagX); $arr_dagYarr = explode("-", $str_dagY); $dagX = mktime(0,0,0,$arr_dagXarr[1],$arr_dagXarr[2],$arr_dagXarr[0]); $dagY = mktime(0,0,0,$arr_dagYarr[1],$arr_dagYarr[2],$arr_dagYarr[0]); $dagTotal = floor(($dagY - $dagX)/(60*60*24)); $arr_dage = array(); for($i=0; $i<$dagTotal; $i++){ $arr_dage[$i] = date('j M Y', mktime(0,0,0,$arr_dagXarr[1],$arr_dagXarr[2]+$i,$arr_dagXarr[0])); } print_r($arr_dage); ?>
10. april 2010 - 18:44
#2
Hvis du bruger standarddato format: <?php $daget = "2010-04-30"; $dagto = "2010-05-03"; $firstday = strtotime($daget); $lastday = strtotime($dagto); $alldays = 0; for($i = $firstday; $i <= $lastday; $i +=86400) { echo date("d/m Y", $i)."<br />"; $alldays++; } echo $alldays; ?>
10. april 2010 - 19:03
#6
Njahh, det er vist mere php som er snedigt :O) Og dit ex. virker såmænd, omend der er flere dage end efterspurgt !