DateTime

การใช้ DateTime object

คุณ roteee เคยถามว่า PHP 4 กับ 5 มีอะไรต่างกัน อย่างหนึ่งที่ต่างคือ PHP 5 ตั้งแต่ 5.1 เป็นต้นมา มี DateTime object ครับ ซึ่งใช้งานได้สะดวกกว่าการอ้างอิง unix timestamp เยอะครับ แต่ยังติดอะไรบางอย่างเล็กน้อย ไว้กล่าวตอนท้าย

การสร้าง DateTime object

$dt = new DateTime("2008-08-01 18:10"); สามารถสร้างโดยกำหนด string ของ datetime ตอน construct มันได้เลย ซึ่งมันจะใช้ timezone แบบเดียวกับค่าปริยายของเซิร์ฟเวอร์ เช่น ถ้าเซิร์ฟเวอร์ตั้งอยู่ประเทศไทย ก็จะใช้ timezone เป็น ICT หรือ GMT+0700 หรือถ้าต้องการระบุ timezone เป็นที่อื่น ก็สั่งแบบนี้
$dt1 = new DateTime("2008-08-01 18:10 UTC");
$dt2 = new DateTime("2008-08-05 13:00+09:00");
ถ้าไม่ระบุค่า string จะได้ค่าวันที่และเวลาปัจจุบัน สมมติ $d คือเวลาเป็น unix timestamp ได้จากฐานข้อมูล ถ้าจะตั้งเวลาให้กับ DateTime ก็ทำได้โดย
$dt3 = new DateTime(strftime("%D %T",$d));

Date Diff - หาผลต่างของวันที่

สำหรับหา "ผลต่าง" ของ "วันที่" 2 ค่า (เราคงไม่จับวันที่มาลบกันดุ้นๆหรอกน้ะครับ :-)



©2007-2010 PHPZealots.com. All right reserved.
Syndicate content