คำอธิบาย
ฟังก์ชัน timezone_transitions_get() ใช้ดึงข้อมูลการเปลี่ยนแปลงเขตเวลา (transitions) ทั้งหมดของอ็อบเจกต์ DateTimeZone รวมถึงการเปลี่ยนเวลาบ้ายนก (DST) การเปลี่ยน offset และชื่อเขตเวลา
รูปแบบการใช้งาน (Syntax)
timezone_transitions_get(DateTimeZone $object): array|false
พารามิเตอร์
- object - อ็อบเจกต์ DateTimeZone
ค่าที่คืนกลับ (Return Value)
คืนค่าอาร์เรย์เชิงตัวเลขที่มีอาร์เรย์เชื่อมโยงของ transitions ทุกครั้ง หรือ false ถ้าล้มเหลว แต่ละ transition มี key: ts (timestamp), time (วันที่เวลา), offset (อフセ็ตวินาที), isdst (DST หรือไม่), abbr (ชื่อย่อ)
ตัวอย่างการใช้งาน
ตัวอย่างที่ 1 - เขตเวลา Asia/Colombo
<?php
$tz = timezone_open('Asia/Colombo');
$res = timezone_transitions_get($tz);
print_r(array_slice($res, 0, 2));
?>ผลลัพธ์
Array
(
[0] => Array
(
[ts] => -9223372036854775808
[time] => -292277022657-01-27T08:29:52+0000
[offset] => 19164
[isdst] =>
[abbr] => LMT
)
[1] => Array
(
[ts] => -2147483648
[time] => 1901-12-13T20:45:52+0000
[offset] => 19172
[isdst] =>
[abbr] => MMT
)
)ตัวอย่างที่ 2 - เขตเวลา Europe/Paris
<?php
$tz = timezone_open('Europe/Paris');
$res = timezone_transitions_get($tz);
print_r(array_slice($res, 0, 2));
?>ผลลัพธ์
Array
(
[0] => Array
(
[ts] => -9223372036854775808
[time] => -292277022657-01-27T08:29:52+0000
[offset] => 561
[isdst] =>
[abbr] => LMT
)
[1] => Array
(
[ts] => -2147483648
[time] => 1901-12-13T20:45:52+0000
[offset] => 561
[isdst] =>
[abbr] => PMT
)
)