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.