คลาส 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,
สำหรับการตั้งค่าเขตเวลาเริ่มต้น