Η μέθοδος setDate της κλάσης DateTime
Η μέθοδος setDate αλλάζει την ημερομηνία στο αντικείμενο DateTime. Δέχεται τρεις παραμέτρους: έτος (ακέραιος αριθμός), μήνας (ακέραιος αριθμός από 1 έως 12) και ημέρα (ακέραιος αριθμός από 1 έως 31). Επιστρέφει το τροποποιημένο αντικείμενο DateTime.
Σύνταξη
public DateTime::setDate(int $year, int $month, int $day): DateTime
Παράδειγμα
Ας ορίσουμε τη νέα ημερομηνία 15 Μαρτίου 2023:
<?php
$date = new DateTime();
$date->setDate(2023, 3, 15);
echo $date->format('Y-m-d');
?>
Αποτέλεσμα εκτέλεσης κώδικα:
'2023-03-15'
Παράδειγμα
Αυτόματη διόρθωση μη έγκυρων ημερομηνιών (32 Ιανουαρίου μετατρέπεται σε 1 Φεβρουαρίου):
<?php
$date = new DateTime();
$date->setDate(2023, 1, 32);
echo $date->format('Y-m-d');
?>
Αποτέλεσμα εκτέλεσης κώδικα:
'2023-02-01'
Παράδειγμα
Ρύθμιση ημερομηνίας με αρνητικές τιμές (μετάβαση στον προηγούμενο χρόνο):
<?php
$date = new DateTime();
$date->setDate(2023, -1, 15);
echo $date->format('Y-m-d');
?>
Αποτέλεσμα εκτέλεσης κώδικα:
'2022-11-15'