การแสดงวันที่เป็นภาษาไทย ก่อนอื่นต้องทำการเพิ่มข้อมูลเข้า ใน Database ก่อนนะครับ โดยทำรูปแบบ ตามนี้ครับ 20140201 ก็จะได้เท่ากับ ปี 2014 เดือน กุมพาพันธุ์ วันที่ 1 เมื่อข้อมูลถูกบันทึกแล้วการที่จะดึงมาแสดงตามส่วนต่างๆของเว็บ เราก็สามารถจัดการได้ทั้งแสดงเป็นภาษาไทยภาษาอังกฤษ ได้หมดครับ และยังสามารถคำนวนวันได้อีก จะให้ทำการ online offline ได้ ส่วนนี้จะกลาวในบทความอื่นต่อไปนะครับ
มาดูส่วนของ Function ของแสดงวันที่ภาษาไทยก่อนเลย ออกตัวก่อนนะครับ ผมก็ไม่ได้คิดมา 100% หรอก copy จากเว็บมาแล้วดัดแปลงเอาอีกที Function จะเป็นแบบนีครับ
function datethai($dateDB){
//------------------------------ ก่อนอื่นเรามาสร้าง Array ของเดือนภาษาไทยกันก่อน ตามนี้เข้าใจกันหรือเปล่าเอ่ยก็ง่ายครับ สร้างเดือน 10 เดือนให้อยู่ใน Array เพื่อง่ายทีจะดึงข้อมูลมาใช้ไงล่ะครับ เช่น 1 ก็จะเป็นเดือน มกราคม ไงล่ะครับ
$thai_month=array(
"1"=>"มกราคม",
"2"=>"กุมภาพันธ์",
"3"=>"มีนาคม",
"4"=>"เมษายน",
"5"=>"พฤษภาคม",
"6"=>"มิถุนายน",
"7"=>"กรกฎาคม",
"8"=>"สิงหาคม",
"9"=>"กันยายน",
"10"=>"ตุลาคม",
"11"=>"พฤศจิกายน",
"12"=>"ธันวาคม"
);
//----------------------------------------------------
$year=substr($dateDB,0,4); // ทำการดึงค่าตัวเลขตัวแรกคือเลข 2 ทั้งหมด 4 ตัว ผลที่ได้คือ 20130201 = 2013(จะเป็นปี)
$month=substr($dateDB,4,2); // ทำการดึงค่าตัวเลขตัวที่ 5 ทั้งหมด 2 ตัว ผลที่ได้คือ 20130201 = 02(จะเป็นเดือน)
$day=substr($dateDB,ุ6,2); // ทำการดึงค่าตัวเลขตัวที่ 7 ทั้งหมด 2 ตัว ผลที่ได้คือ 20130201 = 02(จะเป็นวัน)
$thai_date=$day." ".$thai_month_arr[number_format($month)]." ".($year+543); //นำค่่ามาจัดเรียงให้เป็นประโยคภาษาไทยครับ วัน เดือน ปี+543 โดยจากข้อมูลเราเป็น 2013 ต้องทำให้เป็นปี พ.ศ.
return $thai_date;
}
คราวนี้เราก็มาเรียกใช้ก็ดูบ้างนะครับ echo datethai("20140212");
ผลที่ได้ออกมาก็จะเป็นแบบนี้ครับ "12 กุมภาพันธ์ 2557"
ลองเอาไปทดลองปรับใช้ดูนะครับ มี script อะไรใหม่เดียวมาแชร์ให้นะครับ
by:amino
|