Η Κλάση DateTimeZone
Η κλάση DateTimeZone επιτρέπει την εργασία με ζώνες ώρας στην PHP.
Δέχεται στον κατασκευαστή μια συμβολοσειρά με τον αναγνωριστικό της ζώνης ώρας.
Σύνταξη
new DateTimeZone(string $timezone);
Παράδειγμα
Ας δημιουργήσουμε ένα αντικείμενο ζώνης ώρας για τη Μόσχα:
<?php
$timezone = new DateTimeZone('Europe/Moscow');
print_r($timezone);
?>
Αποτέλεσμα εκτέλεσης του κώδικα:
DateTimeZone Object
(
'timezone_type' => 3
'timezone' => Europe/Moscow
)
Παράδειγμα
Χρήση με την κλάση DateTime:
<?php
$timezone = new DateTimeZone('America/New_York');
$date = new DateTime('now', $timezone);
echo $date->format('Y-m-d H:i:s');
?>
Αποτέλεσμα εκτέλεσης του κώδικα (τρέχουσα ώρα στη Νέα Υόρκη):
'2025-06-15 14:30:00'
Παράδειγμα
Λήψη λίστας όλων των διαθέσιμων ζωνών ώρας:
<?php
$timezones = DateTimeZone::listIdentifiers();
print_r(array_slice($timezones, 0, 5));
?>
Αποτέλεσμα εκτέλεσης του κώδικα:
[
'Africa/Abidjan'
'Africa/Accra'
'Africa/Addis_Ababa'
'Africa/Algiers'
'Africa/Asmara'
]
Παράδειγμα
Λήψη της μετατόπισης της ζώνης ώρας από UTC:
<?php
$timezone = new DateTimeZone('Asia/Tokyo');
echo $timezone->getOffset($date) / 3600;
?>
Αποτέλεσμα εκτέλεσης του κώδικα:
9
Δείτε επίσης
-
κλάση
DateTime,
για εργασία με ημερομηνία και ώρα -
κλάση
DateInterval,
που ορίζει ένα χρονικό διάστημα -
συνάρτηση
date_default_timezone_set,
για τον ορισμό της προεπιλεγμένης ζώνης ώρας