DateTime::setISODate

date_isodate_set

(PHP 5 >= 5.2.0, PHP 7)

DateTime::setISODate -- date_isodate_setУстанавливает дату в формате ISO

Описание

Объектно-ориентированный стиль

public DateTime::setISODate ( int $year , int $week , int $dayOfWeek = 1 ) : DateTime

Процедурный стиль

date_isodate_set ( DateTime $object , int $year , int $week , int $dayOfWeek = 1 ) : DateTime

Установка даты в соответствии со стандартом ISO 8601, в котором использование недель и смещения в днях предпочтительней указания даты.

Список параметров

object

Только для процедурного стиля: Объект DateTime, возвращаемый date_create(). Функция изменяет этот объект.

year

Год новой даты.

week

Неделя новой даты.

dayOfWeek

Смещение относительно начала недели.

Возвращаемые значения

Возвращает объект DateTime для применения в цепи методов или false в случае возникновения ошибки.

Примеры

Пример #1 Пример использования DateTime::setISODate()

Объектно-ориентированный стиль

<?php
$date 
= new DateTime();

$date->setISODate(20082);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(200827);
echo 
$date->format('Y-m-d') . "\n";
?>

Процедурный стиль

<?php
$date 
date_create();

date_isodate_set($date20082);
echo 
date_format($date'Y-m-d') . "\n";

date_isodate_set($date200827);
echo 
date_format($date'Y-m-d') . "\n";
?>

Результат выполнения данных примеров:

2008-01-07
2008-01-13

Пример #2 Значения, превышающие допустимые пределы, добавляются к старшим полям

<?php
$date 
= new DateTime();

$date->setISODate(200827);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(200828);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(2008537);
echo 
$date->format('Y-m-d') . "\n";
?>

Результат выполнения данного примера:

2008-01-13
2008-01-14
2009-01-04

Пример #3 Поиск месяца по номеру недели

<?php
$date 
= new DateTime();
$date->setISODate(200814);
echo 
$date->format('n');
?>

Результат выполнения данных примеров:

3

Смотрите также