|
|
|
รบกวนสอบถามครับ เรื่องการแปลงวันที่จาก DB มาแสดงผลครับ โดยใช้ substr |
|
|
|
|
|
|
|
Alternative solutions to substr function are:
// method 1
$str = "10"; // "09"
$str = ltrim($str, "0");
echo "Method 1 : ", $str, "<hr>";
// method 2
$str = "31"; // "01"
$str = (string)((int)($str));
echo "Method 2 : ", $str;
|
ประวัติการแก้ไข 2021-08-09 21:45:26
|
|
|
|
Date :
2021-08-09 21:44:56 |
By :
TheGreatGod_of_Death |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2021-08-09 21:51:18 |
By :
TheGreatGod_of_Death |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แจก tool function เล็กๆ เพื่อจะเป็นประโยชน์
Code (PHP)
define('ctime', time());
function js_1($array){ return json_encode($array, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_NUMERIC_CHECK); }
function js_2($array){ return json_encode($array, JSON_UNESCAPED_SLASHES | JSON_NUMERIC_CHECK); }
function js_3($array){ return json_encode($array, JSON_UNESCAPED_SLASHES ); }
function js_encode($array){ return json_encode($array, JSON_UNESCAPED_UNICODE | JSON_NUMERIC_CHECK); }
function doCurl($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);
return $data;
}
////////////////////////////////////////////
function en_month($m, $opt='full'){ // เดือน อังกฤษ
if($opt=='full'){
return array('',
'January','Febuary','March','April','May','June'
,'July','August','Septempber','October','November','December'
)[$m*1];
}else{
return array('','Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')[$m*1];
}
}
function th_month($m, $opt='full'){ // เดือนไทย
if($opt=='full'){
return array('',
'มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน'
,'กรกฎาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'
)[$m*1];
}else{
return array('','ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.','ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.')[$m*1];
}
}
function th_day($d, $opt='full'){ // วันไทย
if($opt=='full'){
return array('อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์')[$d];
}else{
return array('อ.','จ.','อ.','พ.','พฤ.','ศ.','ส.')[$d];
}
}
function th_d_m($dte,$opt='full'){ // ไทย วัน เดือน
if(($dte = date('Y-m-d', strtotime($dte)))){
return (substr($dte,-2)*1) . ' ' . th_month( substr($dte, 5 , 2), $opt);
}return '';
}
function dmy2ymd($o){
$d = DateTime::createFromFormat('j/m/Y', $o);
return $d->format('Y-m-d');
}
function ymd2dmy($o){
$d = DateTime::createFromFormat('Y-m-d', $o);
return $d->format('d/m/Y');
}
function dte_th_2_en($th){
list($d,$m,$y)=explode('-',$th); return date('Y-m-d', mktime(0,0,0,$m,$d,$y-543));
}
function dte_en_2_th($en,$op='short'){
list($y,$m,$d)=explode('-',$en); $y+=543; $w=date('w',strtotime($en));
if($op == 'short'){ return $d.'-'.$m.'-'.$y;}
if($op == 'long'){ return th_d_m($en).' พ.ศ.'.$y;}
if($op == 'full-short'){ return th_day($w,'short').' '.th_d_m($en,'short').' '.$y;}
if($op == 'full-long'){ return th_day($w).'ที่ '.th_d_m($en).' พ.ศ.'.$y;}
}
function datetime_en_2_th($en,$op='short',$time_op='short'){
list($d,$t)=explode(' ',urldecode($en));
return dte_en_2_th($d,$op).' '.($time_op=='short'? substr($t,0,5) : $t);
}
function next_due($d, $last){ // function เฉพาะกิจ ประยุกต์ใช้เอาเอง
$dtd=explode('-',$last);
$yn=mktime(0, 0, 0, $dtd[1]+2, 0, $dtd[0]);
$ym=mktime(0,0,0,$dtd[1]+1, $d,$dtd[0]);
return date('Y-m-d', ($ym>$yn? $yn : $ym));
}
function isDate($d,&$m=null){
if(!preg_match('/^(\d{4})-(\d{2})-(\d{2})/',$d, $m)) return false;
if($m[1]<1700 || ($m[2]*1)<1 || ($m[2]*1)>12 || $m[3]<1){ return false; }
return true;
}
function isDateTime($d){
return preg_match('/^\d{4}(-\d{2}){2} \d{2}(:\d{2}){1,2}$/', $d);
}
function DateGMT($d){return date('D, d M Y H:i:s T', $d);}
function WgisA($d){return date('D, d/m/Y g:i:s A', $d);}
function WgiA($d){return date('D, d/m/Y g:i A', $d);}
function isThDate($d,&$ar=null){ return preg_match('/^(\d{2})[\/-](\d{2})[\/-](\d{4})/',$d, $ar);}
function isDMY($d,&$ar=null){ return preg_match('/^(\d{2})[\/-](\d{2})[\/-](\d{4})/',$d, $ar);}
function dmy($dte){ return preg_replace('/(\d{4})[\/-](\d{2})[\/-](\d{2})/','$3/$2/$1',$dte);}
function age($dt,$tg){ // หาอายุ ปี เดือน วัน
$XX = strtotime($dt); $xy = date('Y',$XX); $xm = date('m',$XX); $xd = date('d',$XX);
$YY = strtotime($tg); $yy = date('Y',$YY); $ym = date('m',$YY); $yd = date('d',$YY);
if( $XX < $YY){
$y = $yy - $xy; $m = $ym-$xm; $d = $yd - $xd;
if($ym<$xm){ $y--; $m+=12; if( $yd<$xd){ $d+=30; $m++;}
}else if($ym>$xm){ if($yd<$xd){ $d+=30; $m--; }
}else if($yd<$xd){ $y--; $m=11; $d+=30; }
}else{
$y = $xy - $yy; $m = $xm-$ym; $d = $xd - $yd;
if($xm<$ym){ $y--; $m+=12; if( $xd<$yd){ $d+=30; $m++;}
}else if($xm>$ym){ if($xd<$yd){ $d+=30; $m--; }
}else if($xd<$yd){ $y--; $m=11; $d+=30; }
}
return (object)['Y'=>$y, 'M'=>$m, 'D'=>$d];
}
function ago($dt,$tg){ // หา วัน เวลา ที่ผ่านมา
$XX = strtotime($dt);
$YY = strtotime($tg);
if( $XX < $YY){
$sec = $YY - $XX;
}else{
$sec = $XX - $YY;
}
$min = floor($sec / 60); $sec -= $min * 60;
$hou = floor($min / 60); $min -= $hou * 60;
$day = floor($hou / 24); $hou -= $day * 24;
return $day.'day '.$hou.'hrs '.$min.'mins';
}
function isPsw($txt){ // ตรวจสอบ password strength 0 - 8
$strength = 0;
if(strlen($txt)>7){
$strength += preg_match('/([a-z](.*?)[a-z]|[a-z]{2})/',$txt)? 1:0;
$strength += preg_match('/([A-Z](.*?)[A-Z]|[A-Z]{2})/',$txt) ?1:0;
$strength += preg_match('/([0-9](.*?)[0-9]|[0-9]{2})/',$txt) ?1:0;
$strength += preg_match('/([$@#&!](.*?)[$@#&!]|[$@#&!]{2})/',$txt) ?1:0;
$strength += preg_match('/[a-z]/',$txt) ?1:0;
$strength += preg_match('/[A-Z]/',$txt) ?1:0;
$strength += preg_match('/[0-9]/',$txt) ?1:0;
$strength += preg_match('/[$@#&!]/',$txt) ?1:0;
}
return $strength;
}
function isEmail($e){
return preg_match('/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/',$e);
};
function at(){ // ไว้ใช้ต่อท้าย ไฟล์
return '?at='.ctime;
}
|
|
|
|
|
Date :
2021-08-10 06:44:33 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมมีทำ class วันที่ไทยเอาไว้ เหมาะกับพวกค่าที่เป็น timestamp หรือวันที่ปีสากลที่จะแปลงเป็น timestamp ได้ง่ายๆก่อนใช้
https://github.com/Rundiz/thai-date
Code (PHP)
echo thaidate('วันlที่ j F พ.ศ.Y เวลาH:i:s', strtotime($dateYmdHis));
// ตัวอย่าง วันพฤหัสบดีที่ 12 พฤศจิกายน พ.ศ.2558 เวลา18:55:29
|
|
|
|
|
Date :
2021-08-13 08:04:55 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|