PHP - วันที่และเวลา
วันที่เป็นส่วนหนึ่งของชีวิตประจำวันมากจนทำงานกับพวกเขาได้ง่ายโดยไม่ต้องคิด PHP ยังมีเครื่องมือที่มีประสิทธิภาพสำหรับการคำนวณวันที่ซึ่งทำให้การจัดการวันที่เป็นเรื่องง่าย
การประทับเวลาพร้อมเวลา ()
PHP ของ time()ฟังก์ชันให้ข้อมูลทั้งหมดที่คุณต้องการเกี่ยวกับวันที่และเวลาปัจจุบัน ไม่ต้องมีอาร์กิวเมนต์ แต่ส่งกลับจำนวนเต็ม
จำนวนเต็มส่งคืนตามเวลา () แสดงถึงจำนวนวินาทีที่ผ่านไปนับตั้งแต่เที่ยงคืน GMT ของวันที่ 1 มกราคม 1970 ช่วงเวลานี้เรียกว่ายุค UNIX และจำนวนวินาทีที่ผ่านไปนับจากนั้นจะเรียกว่าการประทับเวลา
<?php
print time();
?>
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
1480930103
นี่เป็นสิ่งที่เข้าใจยาก แต่ PHP นำเสนอเครื่องมือที่ยอดเยี่ยมในการแปลงการประทับเวลาให้อยู่ในรูปแบบที่มนุษย์คุ้นเคย
การแปลงการประทับเวลาด้วย getdate ()
ฟังก์ชั่น getdate()เลือกที่จะยอมรับการประทับเวลาและส่งคืนอาร์เรย์ที่เชื่อมโยงซึ่งมีข้อมูลเกี่ยวกับวันที่ หากคุณไม่ใช้การประทับเวลาจะใช้กับการประทับเวลาปัจจุบันตามเวลาที่ส่งกลับ ()
ตารางต่อไปนี้แสดงรายการองค์ประกอบที่อยู่ในอาร์เรย์ที่ส่งคืนโดย getdate ()
ซีเนียร์ No | คีย์และคำอธิบาย | ตัวอย่าง |
---|---|---|
1 | seconds วินาทีที่ผ่านมา (0-59) |
20 |
2 | minutes นาทีที่ผ่านมา (0-59) |
29 |
3 | hours ชั่วโมงของวัน (0 - 23) |
22 |
4 | mday วันของเดือน (1-31) |
11 |
5 | wday วันในสัปดาห์ (0 - 6) |
4 |
6 | mon เดือนของปี (1-12) |
7 |
7 | year ปี (4 หลัก) |
พ.ศ. 2540 |
8 | yday วันของปี (0 - 365) |
19 |
9 | weekday วันของสัปดาห์ |
วันพฤหัสบดี |
10 | month เดือนของปี |
มกราคม |
11 | 0 การประทับเวลา |
948370048 |
ตอนนี้คุณสามารถควบคุมวันที่และเวลาได้อย่างสมบูรณ์ คุณสามารถจัดรูปแบบวันที่และเวลานี้ในรูปแบบใดก็ได้ที่คุณต้องการ
ตัวอย่าง
ลองใช้ตัวอย่างต่อไปนี้
<?php
$date_array = getdate();
foreach ( $date_array as $key => $val ){
print "$key = $val<br />";
}
$formated_date = "Today's date: ";
$formated_date .= $date_array['mday'] . "/";
$formated_date .= $date_array['mon'] . "/";
$formated_date .= $date_array['year'];
print $formated_date;
?>
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
seconds = 10
minutes = 29
hours = 9
mday = 5
wday = 1
mon = 12
year = 2016
yday = 339
weekday = Monday
month = December
0 = 1480930150
Today's date: 5/12/2016
การแปลงการประทับเวลาด้วยวันที่ ()
date()ฟังก์ชันส่งคืนสตริงที่จัดรูปแบบแทนวันที่ คุณสามารถใช้การควบคุมรูปแบบจำนวนมหาศาลที่วันที่ () ส่งกลับด้วยอาร์กิวเมนต์สตริงที่คุณต้องส่งผ่านไป
date(format,timestamp)
วันที่ () เป็นทางเลือกที่จะยอมรับการประทับเวลาหากไม่ระบุวันที่และเวลาปัจจุบันจะถูกใช้ ข้อมูลอื่น ๆ ที่คุณรวมไว้ในสตริงรูปแบบที่ส่งถึงวันที่ () จะรวมอยู่ในค่าส่งคืน
ตารางต่อไปนี้แสดงรายการรหัสที่สตริงรูปแบบสามารถมีได้ -
ซีเนียร์ No | รูปแบบและคำอธิบาย | ตัวอย่าง |
---|---|---|
1 | a ตัวพิมพ์เล็ก "am" หรือ "pm" |
น |
2 | A ตัวพิมพ์ใหญ่ "AM" หรือ "PM" |
น |
3 | d วันของเดือนตัวเลขที่มีศูนย์นำหน้า |
20 |
4 | D วันในสัปดาห์ (สามตัวอักษร) |
พฤ |
5 | F ชื่อเดือน |
มกราคม |
6 | h ชั่วโมง (รูปแบบ 12 ชั่วโมง - เลขศูนย์นำหน้า) |
12 |
7 | H ชั่วโมง (รูปแบบ 24 ชั่วโมง - เลขศูนย์นำหน้า) |
22 |
8 | g ชั่วโมง (รูปแบบ 12 ชั่วโมง - ไม่มีศูนย์นำหน้า) |
12 |
9 | G ชั่วโมง (รูปแบบ 24 ชั่วโมง - ไม่มีศูนย์นำหน้า) |
22 |
10 | i นาที (0 - 59) |
23 |
11 | j วันของเดือน (ไม่มีศูนย์นำหน้า |
20 |
12 | l (Lower 'L') วันของสัปดาห์ |
วันพฤหัสบดี |
13 | L ปีอธิกสุรทิน ('1' สำหรับใช่ '0' สำหรับไม่ใช่) |
1 |
14 | m เดือนของปี (ตัวเลข - เลขศูนย์นำหน้า) |
1 |
15 | M เดือนของปี (สามตัวอักษร) |
ม.ค. |
16 | r วันที่จัดรูปแบบ RFC 2822 |
พฤ. 21 ธ.ค. 2543 16:01:07 น. +0200 |
17 | n เดือนของปี (ตัวเลข - ไม่มีศูนย์นำหน้า) |
2 |
18 | s วินาทีของชั่วโมง |
20 |
19 | U ประทับเวลา |
948372444 |
20 | y ปี (ตัวเลขสองหลัก) |
06 |
21 | Y ปี (ตัวเลขสี่หลัก) |
พ.ศ. 2549 |
22 | z วันของปี (0 - 365) |
206 |
23 | Z ชดเชยเป็นวินาทีจาก GMT |
+5 |
ตัวอย่าง
ลองใช้ตัวอย่างต่อไปนี้
<?php
print date("m/d/y G.i:s<br>", time());
echo "<br>";
print "Today is ";
print date("j of F Y, \a\\t g.i a", time());
?>
สิ่งนี้จะให้ผลลัพธ์ดังต่อไปนี้ -
12/05/16 9:29:47
Today is 5 2016f December 2016 at 9:29 am
หวังว่าคุณจะมีความเข้าใจในการจัดรูปแบบวันที่และเวลาตามความต้องการของคุณ สำหรับการอ้างอิงของคุณรายการทั้งหมดของฟังก์ชันวันที่และเวลาจะได้รับในฟังก์ชันวันที่และเวลาของPHP