ข้อมูลวันที่ หรือ DATE ใน ฐานข้อมูล MySQL นั้น จะอยู่ในรูปแบบของ ปี-เดือน-วัน (เช่น 2015-05-05) ซึ่ง อาจจะไม่สะดวกในการแสดงผล หากต้องการให้การแสดงผลอยู่ในรูปแบบ ว/ด/ป สามารถ ทำได้โดยการสร้าง Function ขึ้นมาเพื่อ แปลง ข้อมูลให้เป็นในรูปแบบที่ต้องการ
1.ตัวอย่าง Function แสดงวันที่เป็น รูปแบบ ว/ด/ป
1.1.สร้าง function ชื่อว่า changeDate โดยรับค่าตัวแปร $date เข้ามา (ตัวอย่าง 2015-05-05)
1.2.ใช้ function explode เพื่อแยกข้อความจากตัวแปร $date ออกเป็นส่วน ๆ ตามเครื่องหมาย – โดยเก็บค่าไว้ในตัวแปร $get_date ซึ่งในตัวแปร $get_date จะมีค่าเป็น Array เก็บข้อมูลประมาณนี้
Array
(
[0] => 2016 //Array ลำดับที่ 0 เก็บค่า ปี
[1] => 01 //Array ลำดับที่ 1 เก็บค่า เดือน
[2] => 01 //Array ลำดับที่ 2 เก็บค่า วันที่
)
1.3.สร้างตัวแปร $month เก็บค่าเดือนเป็นแบบ Array
1.4.สร้างตัวแปร $get_month ให้มีค่าเท่ากับ ตัวแปร $get_date[‘1’] ซึ่งเก็บค่าเดือน
1.5.สร้างตัวแปร $year ให้มีค่าเท่ากับ ตัวแปร $get_date[‘0’] แล้ว บวกด้วย 543 เพื่อให้เป็นรูปแบบ พ.ศ.
1.6. return ค่าตัวแปร $get_date[‘2’].” “.$month[$get_month].” “.$year
PHP explode() Function
เพิ่มเติม สำหรับ Function explode คือ function สำหรับ แยก String เป็น Array จากเครื่องหมายที่ต้องการแบ่ง
explode(separator,string)
separator คือ string หรือ เครื่องหมายที่ต้องการแบ่ง
string คือ ข้อความที่ต้องการแบ่งอ้างอิง http://www.w3schools.com/php/func_string_explode.asp
ตัวอย่าง Function changeDate แสดงวันที่ในรูปแบบ ว/ด/ป
<?php function changeDate($date){ //ใช้ Function explode ในการแยกไฟล์ ออกเป็น Array $get_date = explode("-",$date); //กำหนดชื่อเดือนใส่ตัวแปร $month $month = array("01"=>"ม.ค.","02"=>"ก.พ","03"=>"มี.ค.","04"=>"เม.ย.","05"=>"พ.ค.","06"=>"มิ.ย.","07"=>"ก.ค.","08"=>"ส.ค.","09"=>"ก.ย.","10"=>"ต.ค.","11"=>"พ.ย.","12"=>"ธ.ค."); //month $get_month = $get_date["1"]; //year $year = $get_date["0"]+543; return $get_date["2"]." ".$month[$get_month]." ".$year; } //การเรียกใช้งาน Function echo change_date("2015-05-05"); ?>
ตัวอย่างการทำงาน Function changeDate
06 พ.ค. 2558
2.ตัวอย่าง Function แสดงวันที่เป็น รูปแบบ วันที่/เดือน/ ปี ชั่วโมง:นาที
2.1.สร้าง function dateTime รับค่าตัวแปร $date_time (ตัวอย่าง 2016-02-19 10:15:00)
2.2.ใช้ function explode แยกข้อมูลวันที่ และ เวลา เก็บไว้ใน ตัวแปร $cut_date
2.3. เรียกใช้ function changeDate จากตัวอย่างที่ 1 เพื่อแสดงวันที่ในรูปแบบ ว/ด/ป โดยส่งค่าวันที่ จากตัวแปร $cut_date[‘0’] เก็บไว้ในตัวแปร $date
2.4. ใช้ function substr ตัด ข้อมูลที่เป็นวินาที่ออกไป
2.5. return ส่งค่าตัวแปร $date และ $time เพื่อกลับไปแสดงผล
PHP substr() Function
เพิ่มเติมสำหรับ function substr คือ function สำหรับ ตัด String ที่ไม่ต้องการออกไป
สามารถระบุ ตำแหน่ง และ ความยาวของข้อความที่ต้องการได้Syntax
substr(string,start,length)string คือ ชุดข้อความที่ต้องการตัด
start คือ ตำแหน่งเริ่มต้น
length คือ ความยาวของตัวอักษรที่ต้องการอ้างอิง http://www.w3schools.com/php/func_string_substr.asp
อ้างอิง http://computer.todaygoods.com/php/substr.html
ตัวอย่าง Function dateTime แสดงวันที่ในรูปแบบ ว/ด/ป ชั่วโมง:นาที
<?php function dateTime($date_time){ //ใช้ function explode แยกข้อมูลวันที่ กับ เวลา $get_date_time = explode(' ',$date_time); //เรียกใช้ function changeDate สำหรับแสดงวันที่ $date = changeDage($get_date_time['0']); //ใช้ funciton substr เพื่อ ตัด ข้อมูลที่เป็น วินาทีออกไปซะ $time = substr($get_date_time['1'],0,-3); return $date." เวลา ".$time; } //การเรียกใช้งาน Function echo dateTime("2015-05-05 10:11:25"); ?>
ตัวอย่างการแสดงผล
05 พ.ค. 2558 เวลา 10:11
จากตัวอย่างจะเห็นได้ว่าเราสามารถสร้าง Function เพื่อ จัดการรูปแบบข้อมูลได้ตามต้องการ
ทั้งนี้สามารถประยุกต์เพิ่มเติมตามความต้องการได้ครับ