Documentación offline PHP master

DateTimeImmutable::setISODate

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

DateTimeImmutable::setISODate

Establece la fecha ISO

Descripción#

#[\NoDiscard(message: "as DateTimeImmutable::setISODate() does not modify the object itself")] public DateTimeImmutable::setISODate(int $year, int $week, [int $dayOfWeek]): DateTimeImmutable
```php

Devuelve un nuevo objeto DateTimeImmutable con la fecha establecida de acuerdo al estándar ISO 8601 - usando semanas y desplazamientos de días en lugar de fechas específicas.

## Parámetros

`year`  
Año de la fecha.

`week`  
Semana de la fecha.

`dayOfWeek`  
Desplazamiento desde el primer día de la semana.

## Valores devueltos

Retorna un nuevo objeto `DateTimeImmutable` con los datos modificados.

## Ejemplos

Ejemplo de `DateTimeImmutable::setISODate`

Estilo orientado a objetos
setISODate(2008, 2); echo $newDate->format('Y-m-d') . "\n"; $newDate = $date->setISODate(2008, 2, 7); echo $newDate->format('Y-m-d') . "\n";
El ejemplo anterior mostrará:

    2008-01-07
    2008-01-13



Estilo procedimental
El ejemplo anterior mostrará:

    2008-01-07
    2008-01-13

Valores que exceden los rangos se añaden a sus valores padres
setISODate(2008, 2, 7); echo $newDate->format('Y-m-d') . "\n"; $newDate = $date->setISODate(2008, 2, 8); echo $newDate->format('Y-m-d') . "\n"; $newDate = $date->setISODate(2008, 53, 7); echo $newDate->format('Y-m-d') . "\n";
El ejemplo anterior mostrará:

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

Buscando el mes en el que se encuentra una semana
setISODate(2008, 14); echo $newDate->format('n'); ```php El ejemplo anterior mostrará: 3 ## Véase también DateTimeImmutable::setDate DateTimeImmutable::setTime ?>