Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ช่วยเรื่อง function return Date Thai phpv.5 ให้เป็น v.7 หน่อยค่ะ



 

ช่วยเรื่อง function return Date Thai phpv.5 ให้เป็น v.7 หน่อยค่ะ

 



Topic : 136531



โพสกระทู้ ( 15 )
บทความ ( 0 )



สถานะออฟไลน์




พอดีหนูพึ่งได้งานทำเว็บจริง ๆ จัง ๆ ครั้งแรกค่ะ แล้วไม่มีใครเป็นที่ปรึกษาเลย คนเก่าที่ทำหน้าที่นี้เขาเสียชีวิตกระทันหันค่ะ สมัยเรียนก็เรียน php 5 พอปรับใช้เป็น php 7 - 8 เลยไม่เข้าใจค่ะว่าอะไรที่เขายกเลิกไปแล้วต้องแก้ไขโค้ดอะไรตรงไหนบ้าง

คำถามคือ ฟังชั่นก์ตัวนี้พออัพขึ้น server ปัจจุบันแล้วมันขึ้น error ค่ะ อย่าด่านะคะ พึ่งหัดทำจริง ๆ ขอผู้รู้ อาจารย์ให้คำแนะนำทีค่ะ

Code (PHP)
function returnDateThai($strDate)     // 2 มีนาคม 2554
{
  if($strDate == null) { return "    -"; }
  list($y,$m,$d)=split('-',$strDate);
 return $d ." " . returnThaiMonth($m) . " " .returnThaiYear($y);
}


function returnDateThai2($strDate)    // 2 มี.ค. 2554
{
 if(($strDate=="0000-00-00")and ($strDatej=="--")and ($strDatej==""))  {return "";}
 else {
		if($strDate == null) { return "    -"; }
		list($y,$m,$d)=split('-',$strDate);
		return $d ." " . returnThaiMonth2($m) . " " .returnThaiYear($y);
      }
}
function returnDateThai3($strDate)    // ๒๓ ส.ค. ๒๕๕๔
{
 if(($strDate=="0000-00-00")and ($strDatej=="--")and ($strDatej==""))  {return "";}
 else {
		if($strDate == null) { return "    -"; }
		list($y,$m,$d)=split('-',$strDate);
		return numberThaiFormat((Int)$d) ." " . returnThaiMonth2($m) . " " . numberThaiFormat2(returnThaiYear($y));
      }
}
function returnDateThaiSY($strDate)    // 23 ส.ค. 54
{
 if(($strDate=="0000-00-00")and ($strDatej=="--")and ($strDatej==""))  {return "";}
 else {
		if($strDate == null) { return "    -"; }
		list($y,$m,$d)=split('-',$strDate);
		return $d ." " . returnThaiMonth2($m) . " " . substr(returnThaiYear($y),2,2);
      }
}

/***********************************************************************/
/*                                            เวลา                                                   */
/***********************************************************************/

function returnTime($strTime)
{
  if($strTime == null) { return "    -"; }
 return  $strTime . " น.";
}

/***********************************************************************/
/*                                                               เดือนไทย                                     */
/***********************************************************************/

function returnThaiMonth($m)
{
      if((Int)$m==1){ return "มกราคม";}
      if((Int)$m==2){ return "กุมภาพันธ์";}
      if((Int)$m==3){ return "มีนาคม";}
      if((Int)$m==4){ return "เมษายน";}
      if((Int)$m==5){ return "พฤษภาคม";}
      if((Int)$m==6){ return "มิถุนายน";}
      if((Int)$m==7){ return "กรกฎาคม";}
      if((Int)$m==8){ return "สิงหาคม";}
      if((Int)$m==9){ return "กันยายน";}
      if((Int)$m==10){ return "ตุลาคม";}
      if((Int)$m==11){ return "พฤศจิกายน";}
      if((Int)$m==12){ return "ธันวาคม";}
     
}
function returnThaiMonth2($m)
{
      if((Int)$m==1){ return "ม.ค.";}
      if((Int)$m==2){ return "ก.พ.";}
      if((Int)$m==3){ return "มี.ค.";}
      if((Int)$m==4){ return "เม.ย.";}
      if((Int)$m==5){ return "พ.ค.";}
      if((Int)$m==6){ return "มิ.ย.";}
      if((Int)$m==7){ return "ก.ค.";}
      if((Int)$m==8){ return "ส.ค.";}
      if((Int)$m==9){ return "ก.ย.";}
      if((Int)$m==10){ return "ต.ค.";}
      if((Int)$m==11){ return "พ.ย.";}
      if((Int)$m==12){ return "ธ.ค.";}
     
}
/***********************************************************************/
/*                                             ปีพุทธศักราช                                                   */
/***********************************************************************/

function returnThaiYear($y)
{
   if( (Int)$y < 2050)	{ return $y+543 ;}
}





Tag : PHP, CSS, HTML5, JavaScript, jQuery, XAMPP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-12-16 09:17:34 By : sunpatoo View : 547 Reply : 6
 

 

No. 1



โพสกระทู้ ( 117 )
บทความ ( 0 )



สถานะออฟไลน์


ขอข้อความ error ด้วยครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 09:59:41 By : sleeplesscat
 


 

No. 2



โพสกระทู้ ( 15 )
บทความ ( 0 )



สถานะออฟไลน์


ขอโทษค่ะ ไม่ได้ขึ้นโค้ด error ค่ะ แต่เป็นแบบนี้ค่ะ

อันนี้เป็นแบบฟอร์มเดิมค่ะ จะเห็นว่า ตรง."วันที่ปัจจุบัน" กับวันที่ "วันที่ ที่เป็น datepicker" ใช้งานได้ตามปกติ
แบบฟอร์มเดิมก่อนมีปัญหาจะเป็นแบบนี้ค่ะ

ตอนนี้ พอใส่ฟังชั่นก์เข้าไปแล้วเกิดปัญหาแบบนี้ค่ะ แบบฟอร์มไม่ขึ้น
แบบฟอร์มไม่ขึ้น

ถ้าเอาฟังชั่นก์ออก แบบฟอร์มขึ้นปกติ แต่วันที่ไม่สามารถใช้งานได้
เอาฟังชั่นก์ออก
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 10:36:03 By : sunpatoo
 

 

No. 3



โพสกระทู้ ( 4,720 )
บทความ ( 8 )



สถานะออฟไลน์


ถ้ามันเป็นฟังก์ชั่นวันที่ภาษาไทย ผมทำ thaidate เอาไว้ เอาไปใช้ได้นะครับแต่ไม่รู้จะตรงต้องการมั้ย
https://github.com/Rundiz/thai-date

ล่าสุดก็แก้ error PHP 8.1 ให้เรียบร้อยแล้วด้วย

ตย.ใช้งาน

Code (PHP)
echo thaidate('วันlที่ j F พ.ศ.Y เวลาH:i:s');// วันพฤหัสบดีที่ 12 พฤศจิกายน พ.ศ.2558 เวลา18:55:29

echo sprintf(thaistrftime('%%s%A%%s %d %B %%s%Y %%s%H:%M:%S'), 'วัน', 'ที่', 'พ.ศ.', 'เวลา');// วันพฤหัสบดีที่ 12 พฤศจิกายน พ.ศ.2558 เวลา18:56:06

$Thaidate = new \Rundiz\Thaidate\Thaidate();
$Thaidate->buddhist_era = true;
$Thaidate->locale = 'th';
echo $Thaidate->intlDate('cccc d MMMM yyyy');// วันพฤหัสบดี 16 ธันวาคม 2564



เห็นว่ามือใหม่ จะบอกให้ติดตั้งผ่าน composer ก็ไม่รู้เคยใช้มั้ย

จะบอกวิธีติดตั้งง่ายๆแบบทำเอาเองละกัน (ไม่ใช้ composer)
1. เข้าไปหน้าเว็บลิ้งค์ที่ผมให้
2. ตรงปุ่มเขียวๆ Code กดแล้วเลือก Download ZIP
3. แตกไฟล์ที่อยู่ข้างใน thai-date-master\Rundiz\Thaidate\ ออกมา จะมี 2 ไฟล์ที่ต้องการเท่านั้น.
สมมุติไฟล์งานอยู่ที่ C:\wwwroot\project ก็อาจจะแตกไว้ที่ C:\wwwroot\project\thaidate

4. ทำการ require ไฟล์ ให้ตรง path ถูกต้อง จาก path สมมุติ C:\wwwroot\project\mypage.php ก็ทำการ require
Code (PHP)
require_once __DIR__ . '/thaidate/Thaidate.php';
require_once __DIR__ . '/thaidate/thaidate-functions.php';


5. จากนั้นก็เรียกใช้ได้เลย

Code (PHP)
echo thaidate('วันlที่ j F พ.ศ.Y เวลาH:i:s') . '<br>';// วันพฤหัสบดีที่ 16 ธันวาคม 2564
echo thaidate('j F Y') . '<br>';// 16 ธันวาคม 2564
echo thaidate('j M Y') . '<br>';// 16 ธ.ค. 2564
echo thaidate('j M y') . '<br>';// 16 ธ.ค. 64


ส่วนการแปลงเลขไทย
ใช้ฟังก์ชั่นนี้
Code (PHP)
function thaiNumbers($number)
{
    $thaiNumbers = ['๐', '๑', '๒', '๓', '๔', '๕', '๖', '๗', '๘', '๙'];
    $arabicNumbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];

    return str_replace($arabicNumbers, $thaiNumbers, $number);
}


เวลาใช้งาน
Code (PHP)
echo thaiNumbers('0123456789 กขค abc');// ๐๑๒๓๔๕๖๗๘๙ กขค abc



ประวัติการแก้ไข
2021-12-16 10:52:18
2021-12-16 10:52:54
2021-12-16 11:01:24
2021-12-16 11:03:26
2021-12-16 11:22:28
2021-12-16 11:30:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 10:49:23 By : mr.v
 


 

No. 4



โพสกระทู้ ( 4,720 )
บทความ ( 8 )



สถานะออฟไลน์


เปิดแสดง error ด้วยในขณะเขียนโค้ด

Code (PHP)
error_reporting(E_ALL);
ini_set('display_errors', '1');


หรือ https://rundiz.com/?p=171

สาเหตุที่ฟอร์มไม่ขึ้นเพราะมันมี error ที่ทำให้หน้านั้นสิ้นสุดการทำงาน แต่ไปปิดมัน มันเลยหยุดทำงานแทนที่จะแสดงข้อความ error.

การแสดง error จะทำให้เราเอาคำไปค้นหาแล้วแก้ไขด้วยตัวเองได้รวดเร็วกว่ามากๆ


ประวัติการแก้ไข
2021-12-16 11:12:11
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 11:08:24 By : mr.v
 


 

No. 5



โพสกระทู้ ( 15 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณ พี่ mr.v มากนะคะ จะลองทำแล้วศึกษาดูค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 11:20:57 By : sunpatoo
 


 

No. 6



โพสกระทู้ ( 4,720 )
บทความ ( 8 )



สถานะออฟไลน์


มีอัพเดท คห. 3 เพิ่มฟังก์ชั่นให้แล้ว ลองดูด้วย

อ่านดูแล้วไม่แนะนำให้ใช้ฟังก์ชั่นเดิม เพราะเฝือ ...คือมากไป จะเอาวันที่แบบหนึ่งก็ใช้ฟังก์ชั่นหนึ่ง จะเอา 6 แบบไม่ต้องเขียน 6 ฟังก์ชั่นเหรอ? มันมากเกินไป
ใช้แบบของผมก็ง่ายดี ใช้รูปแบบ format อ้างอิงจากของ PHP ได้เลยด้วย

format สำหรับ thaidate() ใช้ร่วมกับ date()
https://www.php.net/manual/en/datetime.format.php

format สำหรับ thaistrftime() ใช้ร่วมกับ strftime()
https://www.php.net/manual/en/function.strftime.php

format สำหรับ intlDate() ใช้ร่วมกับ IntlDateFormatter::setPattern ซึ่งใช้ ICU date pattern
https://unicode-org.github.io/icu/userguide/format_parse/datetime/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-12-16 11:26:34 By : mr.v
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยเรื่อง function return Date Thai phpv.5 ให้เป็น v.7 หน่อยค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่