วิธีใช้ฟังก์ชัน date_offset_get() ใน PHP

Withi Chi Fangkchan Date Offset Get Ni Php



เดอะ date_offset_get() เป็นฟังก์ชันคลาส DateTime ใน PHP ที่ใช้เพื่อดึงค่า offset เขตเวลาเป็นวินาทีสำหรับวัตถุ DateTime ที่กำหนด ช่วยให้นักพัฒนาได้รับความแตกต่างระหว่างเวลาในเขตเวลาที่ระบุและ UTC (เวลาสากลเชิงพิกัด)

ไวยากรณ์

ไวยากรณ์ของ date_offset_get() ฟังก์ชั่นมีดังนี้:

นานาชาติ date_offset_get ( วันเวลา $วัตถุ )

พารามิเตอร์ของฟังก์ชันคือ:







$วัตถุ: วัตถุ DateTime ที่จะเรียกข้อมูลออฟเซ็ตเขตเวลา



ค่าส่งคืน

เดอะ date_offset_get() ฟังก์ชันส่งคืนเขตเวลาชดเชยเป็นวินาทีเป็นจำนวนเต็ม



วิธีใช้ฟังก์ชัน date_offset_get() ใน PHP

นี่คือตัวอย่างการใช้ PHP date_offset_get() ฟังก์ชันเพื่อดึง UTC offset สำหรับเขตเวลาปัจจุบัน:







วันที่ $ = ใหม่ วันเวลา ( 'ตอนนี้' ) ;

$ชดเชย = date_offset_get ( วันที่ $ ) ;

เสียงสะท้อน 'ออฟเซ็ต: ' . $ชดเชย ;

?>

ในตัวอย่างนี้ เราสร้างวัตถุ DateTime ใหม่ที่ตั้งค่าเป็นวันที่และเวลาปัจจุบันโดยใช้ 'ตอนนี้' สตริง จากนั้นเราจะส่งวัตถุนี้ไปยัง date_offset_get() ฟังก์ชันซึ่งคืนค่าชดเชย UTC เป็นวินาที สุดท้าย เราพิมพ์ UTC offset โดยใช้คำสั่ง echo



บันทึก: ออฟเซ็ตเป็นศูนย์เนื่องจากไม่ได้ตั้งเวลาสำหรับกรณีนี้

การชดเชยสำหรับวันที่และเวลาที่ระบุ

พีเอชพี date_offset_get() อาจใช้วิธีนี้เพื่อรับ UTC offset สำหรับวันที่และเวลาที่แน่นอน ในการทำเช่นนี้ คุณต้องสร้างวัตถุ DateTime ด้วยวันที่และเวลาที่ต้องการ แล้วส่งต่อไปยังฟังก์ชัน นี่คือตัวอย่าง:



วันที่ $ = ใหม่ วันเวลา ( '2020-12-31 23:59:59' , ใหม่ วันที่เวลาโซน ( 'อเมริกา/นิวยอร์ก' ) ) ;

$ชดเชย = date_offset_get ( วันที่ $ ) ;

เสียงสะท้อน 'ออฟเซ็ต: ' . $ชดเชย ;

?>

ในตัวอย่างนี้ เราสร้าง DateTime object ใหม่โดยตั้งวันที่และเวลาเป็นวันที่ 31 ธันวาคม 2020 เวลา 23:59:59 น. ในเขตเวลา America/New_York จากนั้นเราจะส่งวัตถุนี้ไปยัง date_offset_get() ฟังก์ชันซึ่งคืนค่าชดเชย UTC เป็นวินาที สุดท้าย เราพิมพ์ UTC offset โดยใช้คำสั่ง echo

บันทึก: ในโค้ดด้านบน เขตเวลาถูกตั้งค่าเป็น อเมริกา/นิวยอร์ค ซึ่งช้ากว่าเวลา UTC 5 ชั่วโมง ดังนั้นมันจึงกลับมา -18000 เป็นค่าชดเชยซึ่งเท่ากับ 5 ชั่วโมงในหน่วยวินาที

การแปลงวันที่และเวลาเป็นเขตเวลาอื่น

อีกวิธีหนึ่งในการใช้ PHP date_offset_get() ฟังก์ชันคือการแปลงวัตถุวันที่และเวลาเป็นเขตเวลาอื่น ในการทำเช่นนี้คุณต้องสร้างใหม่ วันที่เวลาโซน วัตถุที่มีเขตเวลาที่ต้องการและตั้งเป็นคุณสมบัติของวัตถุ DateTime ของคุณโดยใช้ กำหนดวันที่ () และ ตั้งเวลา() วิธีการ นี่คือตัวอย่าง:



วันที่ $ = ใหม่ วันเวลา ( 'ตอนนี้' , ใหม่ วันที่เวลาโซน ( 'อเมริกา/นิวยอร์ก' ) ) ;

วันที่ $ -> ตั้งโซนเวลา ( ใหม่ วันที่เวลาโซน ( 'ยุโรป/ลอนดอน' ) ) ;

$ชดเชย = date_offset_get ( วันที่ $ ) ;

เสียงสะท้อน 'ออฟเซ็ต: ' . $ชดเชย ;

?>

ในตัวอย่างนี้ วันที่และเวลาปัจจุบันถูกสร้างขึ้นเป็นวัตถุ DateTime ใหม่ในเขตเวลา America/New_York จากนั้นเราตั้งค่าเขตเวลาเป็น Europe/London โดยใช้ ตั้งโซนเวลา() วิธี. สุดท้าย เราพิมพ์วันที่และเวลาโดยใช้ปุ่ม รูปแบบ() วิธีการซึ่งจัดรูปแบบวันที่และเวลาเป็นสตริงตามรูปแบบที่ระบุ

บันทึก: ในโค้ดด้านบน เขตเวลาถูกตั้งค่าเป็น อเมริกา/นิวยอร์ค ซึ่งช้ากว่าเวลา UTC 5 ชั่วโมง จากนั้นเราก็ตั้งค่าโซนเวลาเป็น ยุโรป/ลอนดอน ซึ่งเร็วกว่าเวลา UTC 1 ชั่วโมง ดังนั้น จะคืนค่าชดเชย 3600 ซึ่งเท่ากับ 1 ชั่วโมงในหน่วยวินาที

บทสรุป

พี.เอช.พี date_offset_get() ฟังก์ชันเป็นฟังก์ชันที่มีประโยชน์สำหรับนักพัฒนาเว็บในการแยกการชดเชยเขตเวลาของวันที่และเวลาที่ระบุ เมื่อใช้ร่วมกับฟังก์ชันวันที่และเวลาอื่นๆ จะสามารถใช้คำนวณความแตกต่างของเวลาระหว่างสองเขตเวลาหรือปรับการประทับเวลาให้สอดคล้องกัน การทำความเข้าใจวิธีใช้ฟังก์ชันนี้อย่างมีประสิทธิภาพจะช่วยเพิ่มฟังก์ชันและความสามารถของแอปพลิเคชันบนเว็บได้อย่างมาก