|
การใช้งานฟังก์ชั่นวันที่และเวลาของ PHP

สวัสดีครับ วันนี้ผมขอเขียนบทความการใช้งานฟังก์ชั่นของ PHP เกี่ยวกับเรื่องวันที่ และ เวลา มาให้ได้อ่านกัน เนื่องจากมีนักศึกษาจำนวนหนึ่งที่เข้ามาชมเว็บไซต์และใช้เว็บนี้เพื่อการเรียนรู้ศึกษาด้วยตัวเอง ได้ส่งเมล์มาหาผมสอบถามเรื่องฟังก์ชั่น ของ PHP ต่างๆมากมาย ว่าเอามาใช้งานกันอย่างไร
วันนี้ผมจึงนำเรื่อง ฟังก์ชั่น date() เกี่ยวกับวันที่และเวลามาเขียนให้อ่านกัน ส่วนฟังก์ชั่นอื่นๆเดี๋ยวผมจะทยอยนำมาเขียนให้อ่านทีละเรื่องนะครับ และจะสลับกับบทความประเภทอื่นๆไปด้วย
มาเริ่มดูฟังก์ชั่นที่ผมจะนำเสนอให้อ่านกันวันนี้ครับ แต่เพื่อเพิ่มความเข้าใจมากยิ่งขึ้น ให้ดาวน์โหลดโค้ดนี้ไปรันทดลองประกอบด้วยครับ
การใช้ฟังก์ชั่น date();
ฟังก์ชั้นนี้เอาไว้อ่านค่าของวัน เดือน ปีและเวลาปัจจุบัน เช่น รูปแบบของวันเดือนปี date("Y-m-d"); จะหมายถึงสตริงค์ที่กำหนดรูปแบบ ของการแสดงผลวันที่ ผลลัพธ์ที่ได้จากตัวอย่างข้างต้นนี้ คือ 2005-03-31 โดย Y =ปี ,m=เดือน ,d = วันที่ มาดูตัวอย่างหลายๆแบบกันครับ สำหรับรูปแบบที่ผมนำมาเสนอวันนี้จะเป็นรูปแบบที่เค้าใช้กันบ่อยๆมาให้ดูนะครับ
|
รูปแบบของวันที่ |
|
รูปแบบที่ |
การใช้งาน |
ตัวอย่างการแสดงผล |
|
1 |
d m y |
31 03 05 |
|
2 |
d m Y |
31 03 2005 |
|
3 |
d/m/Y |
31/03/2005 |
|
4 |
d/m/ เอา Y+543 |
31/03/2548 |
|
5 |
d/M/Y |
31/Mar/2005 |
|
6 |
M d,Y |
Mar 31,2005 |
|
7 |
d F Y |
31 March 2005 |
|
8 |
l F d, Y |
Thursday March 31, 2005 |
|
รูปแบบเวลา |
|
รูปแบบที่ |
การใช้งาน |
ตัวอย่างการแสดงผล |
|
1 |
H:i:s |
13:59:25 |
|
2 |
h:i:s |
01:59:25 |
|
3 |
h:i:s a |
01:59:25 pm |
|
4 |
h:i:s A |
01:59:25 PM |
|
5 |
d F Y, h:i:s A |
31 March 2005, 01:59:25 PM |
|
6 |
d/m/Y, h:i:s A |
31/03/2005, 01:59:25 PM |
|
รูปแบบ |
ความหมาย |
|
d |
วันที่ |
|
m |
เดือน |
|
y |
ปี ค.ศ. แบบย่อ เช่น 05 |
|
Y |
ปี ค.ศ. แบบเต็ม เช่น 2005 |
|
Y+543 |
ปี ค.ศ ปัจจุบันแบบเต็ม+543 จะเท่ากับ ปี พ.ศ ปัจจุบัน เช่น 2548 |
|
Y+43 |
ปี ค.ศ ปัจจุบันแบบย่อ+43 จะเท่ากับ ปี พ.ศ ปัจจุบัน เช่น 48 |
|
M |
ชื่อเดือนแบบย่อ เช่น Mar |
|
F |
ชื่อเดือนแบบเต็ม เช่น March |
|
l |
ชื่อวันแบบเต็ม เช่น Thursday |
|
H |
ชั่วโมงแบบเต็ม เช่น 14 : 00 |
|
i |
นาที |
|
s |
วินาที |
|
h |
ชั่วโมงแบบย่อ เช่น 14:00 ก็จะเท่ากับ 2:00 |
|
a |
จะแสดงผลเป็น a.m. และ p.m. แบบตัวพิมพ์เล็ก |
|
A |
จะแสดงผลเป็น A.M. และ P.M. แบบตัวพิมพ์ใหญ่ |
| *หมายเหตุ A.M.(ante meridium) คือ เอาไว้ใช้ในการบอกเวลาตั้งแต่เที่ยงคืนถึงเที่ยงวัน และ P.M.( past meridium) ใช้ในการบอกเวลาตั้งแต่เที่ยงวันถึงเที่ยงคืน | เวลาเอาไปใช้งานตอนเขียนโปรแกรม รูปแบบก็จะเป็น date ("d m y") , date ("d/m/Y) ฯลฯ และเมื่อต้องการจะให้แสดงผล ก็ใช้ echo date("Y-m-d"); แบบธรรมดาๆเลย หรือจะเอาไปเก็บเป็นค่าของตัวแปรเพื่อเอาไปใช้งานต่างๆกัน รูปแบบเช่น $mystring=date("Y-m-d"); เป็นต้น
ที่นี้เรามาทำวันเดือนปีจากที่เราได้ศึกษาไปจากข้างต้นนี้ เอามาทำให้แสดงผลเป็นภาษาไทยกันมั่ง
| โค้ดตัวอย่างการแสดงผล วัน เดือน ปี แบบไทย |
<?php
/* กำหนดรูปแบบของปี ให้อยู่ในรูปของ พ.ศ. เก็บค่าเอาไว้ในตัวแปร $year */ $yearfull = date("Y")+543; //ปี พ.ศ. แบบเต็ม $yearsmall= date("y")+43; //ปี พ.ศ. แบบย่อ
/* สร้าง array เก็บชื่อวัน เดือนเป็นภาษาไทย */ //ชื่อเดือนแบบย่อ $thaismallmonth=array("ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.", "พ.ย.","ธ.ค."); //ชื่อเดือนแบบย่อแบบเต็ม $thaifullmonth=array("มกราคม.","กุมภาพันธ์.","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม", "พฤศจิกายน","ธันวาคม"); //ชื่อวันแบบย่อ $thaismalldate=array("อา","จ","อ","พ","พฤ","ศ","ส"); //ชื่อวันแบบเต็ม $thaifulldate=array("อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์");
/* แสดงผล */ // รูปแบบการแสดงผลวันเดือนปีแบบเต็ม echo "วัน".$thaifulldate[date("w")]."ที่ ".date ("d")." ".$thaifullmonth[date('m')-1]." พ.ศ.".$yearfull."<br>";
// รูปแบบการแสดงผลวันเดือนปีแบบย่อ echo $thaismalldate[date("w")] .date ("d").$thaismallmonth[date('m')-1] .$yearsmall;
?>
|
| ผลลัพธ์ที่ได้ เช่น |
วันพฤหัสบดีที่ 31 มีนาคม พ.ศ.2548 พฤ31มี.ค.48
| ไฟล์ข้างล่างนี้เป็นผลลัพธ์ที่ได้จากการรันไฟล์ function_date.php ตัวอย่างที่ได้ดาวน์โหลดไปครับ

ลองศึกษาและประยุกต์เอาไปใช้งานกันได้นะครับ หรือจะศึกษาการใช้งาน ฟังก์ชั่น date(); เพิ่มเติมได้ที่เว็บไซต์หลักของ PHP ครับ php.net สำหรับวันนี้แค่นี้ก่อนนะ ขอตัวทำงานต่อครับ :) แล้วเจอกันใหม่ในบทความวันพรุ่งนี้ ขอบคุณทุกท่านที่เข้ามาเยี่ยมชม สวัสดีครับ บาย....
ลิงค์ที่เกี่ยวข้อง http://th.php.net/manual/en/function.date.php |