User Tools

Site Tools


php:functions:date:workweek

[PHP] Montag bis Freitag der aktuellen Woche

Beispiele wie man die Arbeitstage der aktuellen Woche ausgeben kann.

Ab PHP 5.3

//Sontag letzter Woche defineren
$date = new DateTime('last sunday');
//Interval defineren
$interval = DateInterval::createFromDateString('+1 day');
//Die Periode erstellen
$period = new DatePeriod($date, $interval, 5, DatePeriod::EXCLUDE_START_DATE);
 
//Ausgabe
foreach ( $period as $dt ){
	echo $dt->format( "l Y-m-d\n" );
}

Vor PHP 5.3

<table>  
<?php  
	//letzten Sonntag bestimmen
	$date = mktime(0, 0, 0, date('m'), date('d') - (date('w')) , date('Y'));
	//Alle Tage durchloopen
	for ($i = 0; $i < 5; $i++){
				/**
				* Ab PHP5.3 kann man auch mit date_add() arbeiten
				* date_add($date, new DateInterval("P1D");
				*/
				$date =strtotime("+1 day", $date)
?>
	<tr>
		<!-- Wochentag und Datum ausgeben -->
		<td><?php echo date('l', $date); ?></td>
		<td><?php echo date('d.m.Y', $date); ?></td>
	</tr>    
<?php        
	}    
?>
</table>
php/functions/date/workweek.txt · Last modified: 09.12.2013 09:39:54 (external edit)