หน้าเว็บ

วันพุธที่ 10 กรกฎาคม พ.ศ. 2556

หาวันหรือเวลาย้อนหลังด้วย strtotime

ฟังก์ชั่น strtotime จะทำหน้าที่แปลงวันและเวลาตามฟอร์แมทให้ไปอยู่ในรูปของ timestamp
เช่น

strtotime(date("Y-m-d H:i:s",time())); 

ซึ่งจะได้ค่า timestamp เป็นเวลาปัจจุบัน ซึ่งมีค่าเท่ากับเราใช้ฟังก์ชั่น time() นั่นล่ะ

ที่นี้มีคำถามว่า ถ้าเราอยากทราบว่า 30 นาทีก่อนหน้านี้เป็นเวลาเท่าไหร่สามารถใส่พารามิเตอร์ให้มันได้ เช่น

strtotime('-30 minutes');    //  1373430621

เราก็จะได้ค่า timestamp ย้อนกลับไป 30 นาที หากเราต้องการแปลงเป็นวันที่ตามฟอร์แมทที่เราต้องการก็สามารถใช้ฟังก์ชั่น date(); เข้ามาช่วยได้เช่น

date("Y-m-d H:i:s",strtotime('-30 minutes'));    //  2013-07-10 11:30:21
ซึ่งเวลาปัจจุบันคือตอนเที่ยง

หากจะหาวันที่ 1 สัปดาห์ต่อจากนี้ก็ทำได้ มีตัวอย่างให้ดูค่ะ

strtotime("now"); // ปัจจุบัน
strtotime("10 September 2000");   // ตามวันที่ระบุ
strtotime("+1 day");  // วันพรุ่งนี้
strtotime("+1 week");   // อีก 7 วันข้างหน้า
strtotime("+1 week 2 days 4 hours 2 seconds");   //  อีก 9 วัน 4 ชั่วโมง 2 วินาที


ไม่มีความคิดเห็น:

แสดงความคิดเห็น