(PHP 5 >= 5.2.0)
DateTime::setISODate — Sets the ISO date
Objektorientierter Stil
Prozeduraler Stil
Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
Nur bei prozeduralem Aufruf: Ein von date_create() zurückgegebenes DateTime-Objekt. Diese Funktion verändert dieses Objekt.
Year of the date.
Week of the date.
Offset from the first day of the week.
Returns the DateTime object for method chainingIm Fehlerfall wird FALSE zurückgegeben..
Version | Beschreibung |
---|---|
5.3.0 | Der Rückgabewert wurde von NULL auf DateTime geändert. |
Beispiel #1 DateTime::setISODate() example
Objektorientierter Stil
<?php
$date = new DateTime();
$date->setISODate(2008, 2);
echo $date->format('Y-m-d') . "\n";
$date->setISODate(2008, 2, 7);
echo $date->format('Y-m-d') . "\n";
?>
Prozeduraler Stil
<?php
$date = date_create();
date_isodate_set($date, 2008, 2);
echo date_format($date, 'Y-m-d') . "\n";
date_isodate_set($date, 2008, 2, 7);
echo date_format($date, 'Y-m-d') . "\n";
?>
The above examples will output:
2008-01-07 2008-01-13
Beispiel #2 Values exceeding ranges are added to their parent values
<?php
$date = new DateTime();
$date->setISODate(2008, 2, 7);
echo $date->format('Y-m-d') . "\n";
$date->setISODate(2008, 2, 8);
echo $date->format('Y-m-d') . "\n";
$date->setISODate(2008, 53, 7);
echo $date->format('Y-m-d') . "\n";
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
2008-01-13 2008-01-14 2009-01-04
Beispiel #3 Finding the month a week is in
<?php
$date = new DateTime();
$date->setISODate(2008, 14);
echo $date->format('n');
?>
The above examples will output:
3