บทความนี้สอนวิธีแก้ไขปัญหา PHP เวลาไม่ตรง หลายๆ คนที่ใช้ PHP พัฒนาเว็บไซต์ เมื่อใช้คำสั่ง date เพื่อดึงวันที่ เวลาของเครื่องกลับพบว่า วันที่ หรือเวลาไม่ตรง ปัญหานี้แก้ไขได้โดยตั้งค่าโซนเวลาให้ถูกต้องมีรายละเอียดดังนี้
ตัวอย่าง วิธีแก้ไขปัญหา PHP เวลาไม่ตรง แบบที่ 1
<?php
date_default_timezone_set("Asia/Bangkok");
?>
จากโค้ดใช้คำสั่ง date_default_timezone_set กำหนดเป็น Asia/Bangkok เป็นการตั้งค่าโซนเวลาให้ถูกต้อง วิธีนี้มีข้อดีคือไม่ต้องแก้ไขไฟล์ php.ini โดยแนะนำให้ใส่โค้ดดังกล่าวไว้ที่ไฟล์ config และเรียกใช้เข้าไปในโปรเจคเว็บไซต์ของเราที่มองเห็นได้ทั้งหมดด้วยคำสั่ง include หรือ require
ตัวอย่าง วิธีแก้ไขปัญหา PHP เวลาไม่ตรง แบบที่ 2
1. ให้เปิดไฟล์ php.ini (ไฟล์นี้จะอยู่แตกต่างกันไปตามโปรแกรม และระบบปฏิบัติการ) สมมติใช้ XAMPP บน Windows จะอยู่ใน /xampp/php/php.ini) จากนั้นค้นหา “date.timezone” ในไฟล์ php.ini และแก้ไขค่าให้เป็นตามด้านล่าง
date.timezone=Asia/Bangkok
จากตัวอย่างเป็นการตั้งค่าโซนเวลาให้เป็น Asia/Bangkok ผ่าน date.timezone ในไฟล์ php.ini
2. ทำการ Restart web server เพื่อโหลดการตั้งค่าใหม่ วิธีนี้จะเหมาะสำหรับกรณีเรามีสิทธิแก้ไขไฟล์ php.ini ได้ ซึ่งทำให้เวลาเขียนโปรแกรมจึงไม่ต้องใช้คำสั่ง date_default_timezone_set และ include หรือ require เข้าไปในโปรเจค