GORAGOD.com

เมื่อเวลาของเซิร์ฟเวอร์ไม่ตรง

มักเกิดกับการใช้ PHP ต่างเวอร์ชั่นกัน หรือใช้เซิร์ฟเวอร์ของเมืองนอกครับ ซึ่งเวลาตามที่ตั้งของ Server อาจไม่ตรงกับเวลาของประเทศไทย ซึ่งจะทำให้ PHP คืนค่าเวลาตามเวลาของ Server

วิธีนี้เป็นวิธีแก้ปัญหาที่ปลายเหตุนะครับ เนื่องมาจากเราอาจไม่สามารถแก้ไขเวลาของ Server ด้วยตัวเองได้ โดยให้เราอ่านค่าเวลาตามที่กำหนดของเราเอง
<?php
  $hour=+0; //จำนวนชั่วโมงที่ทด เป็น บวก หรือ ลบก็ได้
  $min=+0; //จำนวนนาทีที่ทด เป็น บวก หรือ ลบก็ได้ 
  $mmktime = mktime( date("H")+$hour, date("i")+$min ); // เวลาในรูป mktime ที่ทดแล้ว
  //วันที่ วันนี้
  $mtoday = date("d ", $mmktime);
  //เวลา ตอนนี้
  $mtime = date("H:i", $mmktime);
?>

ปรับตามค่าที่กำหนดใน $hour เป็น ชม. และ $min เป็น นาที ว่าเซิร์ฟเวอร์ของคุณ เร็วหรือช้ากว่าปกติ กี่ ชม. กี่ นาที

ในการอ่านค่าวันที่ควรอ่านค่าวันที่ เวลา จากตัวแปรนี้ทุกครั้งนะครับ หรือ อาจนำไปแปลงเป็นรูปแบบที่ต้องการก่อนใช้งาน