date_isodate_set în PHP

Dată și oră PHP 5.2+

Setează data după anul ISO, numărul săptămânii și ziua din săptămână (1 = luni).

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

Ce face date_isodate_set

Forma de funcție a metodei DateTime::setISODate(). Este folosită în planificări pe săptămâni („săptămâna 43, vineri”). În standardul ISO 8601 săptămâna începe luni, iar săptămâna 1 este cea care conține prima joi a anului.

De aceea, săptămâna 1 din 2026 începe luni, 29 decembrie 2025.

Parametri

Parametru Descriere
$object Obiectul DateTime modificat.
$year Anul ISO.
$week Numărul săptămânii (1-53).
$dayOfWeek Opțional. Ziua din săptămână: 1 = luni … 7 = duminică.

Ce returnează

Același obiect, modificat.

Exemple

Exemplul 1: Prima săptămână și o zi dintr-o săptămână anume

<?php
$d = date_create("2026-10-19");

date_isodate_set($d, 2026, 1);
echo date_format($d, "l d.m.Y") . "\n";

date_isodate_set($d, 2026, 43, 5);
echo date_format($d, "l d.m.Y") . " (săptămâna " . date_format($d, "W") . ")";

Rezultat

Monday 29.12.2025
Friday 23.10.2026 (săptămâna 43)

Greșeli frecvente

  • Crezi că săptămâna 1 începe mereu pe 1 ianuarie. După ISO 8601 poate începe în decembrie anul anterior sau pe 4 ianuarie.

Comenzi înrudite

  • date_date_set: Setează anul, luna și ziua unui obiect DateTime și păstrează ora.
  • idate: Returnează o singură componentă a unei date (an, lună, zi, oră…) direct ca număr întreg.
  • date: Afișează data și ora într-un anumit format.