(PHP 5 >= 5.2.0, PHP 7)
DateTime::setISODate -- date_isodate_set — Sets the ISO date
Об'єктно-орієнтований стиль
Процедурний стиль
Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
object
Procedural style only: A DateTime object returned by date_create(). The function modifies this object.
year
Year of the date.
week
Week of the date.
day
Offset from the first day of the week.
Повертає об'єкт DateTime для ланцюжка пов'язаних методів або FALSE
в разі помилки.
Версія | Опис |
---|---|
5.3.0 | Changed the
return value on success from NULL to DateTime. |
Приклад #1 DateTime::setISODate() example
Об'єктно-орієнтований стиль
<?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";
?>
Процедурний стиль
<?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";
?>
Наведені вище приклади виведуть:
2008-01-07 2008-01-13
Приклад #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";
?>
Наведений вище приклад виведе:
2008-01-13 2008-01-14 2009-01-04
Приклад #3 Finding the month a week is in
<?php
$date = new DateTime();
$date->setISODate(2008, 14);
echo $date->format('n');
?>
Наведені вище приклади виведуть:
3