php日期年月日
A. php如何讀取月份及日期
include("conn.php");
$a="select*fromqiandanorderbyid";
$res=mysql_query($a,$conn);
$r=mysql_fetch_array($res);
$date=$r['date'];
echo$t;
date('m',strtotime('2011-08-25'));
echo$yue;
B. php應用:獲取日期正則表達式:\\d{4}[年|\-|\.]\d{\1-\12}[月|\-|\.]\d{\1-\31}日
^d{4}(年|-|.)(0?[1-9]|1[0-2])(月|-|.)(0?[1-9]|[1-2]d|3[0-1])日?$
這種是還是有缺陷的你可以看到最後一個,還有就是2月31日這樣的也會被匹配的。不過應對一般日期還是可以的。
C. PHP如何用正則表達式把標准時間年月日轉為橫杠形式
首先,應該是雙反斜杠,不是單反斜杠
這里提供兩種方式
str_replace(array('年','月'),'-',$date_str);
date('Y-m-d H:i',strtotime($date_str));
D. php中將一年12個月的日歷全部輸出。如何做
<?php
//SKY8G提供
function cal_days_in_year($year){
$days=0;
for($month=1;$month<=12;$month++){
$days = $days + cal_days_in_month(CAL_GREGORIAN,$month,$year);
}
return $days;
}
//閏年
echo "這是閏年一年有:".cal_days_in_year(2000)."天";
echo "\n";
//平年
echo "這是平年一年有:".cal_days_in_year(1999)."天";
echo "\n";
//2019年
echo "今年2019年有:".cal_days_in_year(date('Y',time()))."天";
echo "\n";
//接下來我們是用php的內置函數cal_days_in_month()
$d=cal_days_in_month(CAL_GREGORIAN,2,2010);
echo "2010 年平年 2 月有 $d 天。\n";
$d=cal_days_in_month(CAL_GREGORIAN,2,2000);
echo "2000 年閏年 2 月有 $d 天。";
echo "\n";
$d=cal_days_in_month(CAL_GREGORIAN,4,2010);
echo "2010 年平年 4 月有 $d 天。\n";
$d=cal_days_in_month(CAL_GREGORIAN,4,2000);
echo "2000 年閏年 4 月有 $d 天。";
echo "\n";
$d=cal_days_in_month(CAL_GREGORIAN,8,2010);
echo "2010 年平年 8 月有 $d 天。\n";
$d=cal_days_in_month(CAL_GREGORIAN,8,2000);
echo "2000 年閏年 8 月有 $d 天。";
//詳情如果想了解詳情去sky8g網觀看,希望對你有幫助!
E. 關於PHP 時間戳轉換年月日問題。
<?PHP
/*
*==============================
*此方法由mantye提供
*http://my.oschina.net/u/223350
*@date2014-07-22
*==============================
*@description取得兩個時間戳相差的年齡
*@before較小的時間戳
*@after較大的時間戳
*@returnstr返回相差年齡y歲m月d天
**/
$after=1529380306;
$before=time();
functiondatediffage($before,$after){
if($before>$after){
$b=getdate($after);
$a=getdate($before);
}else{
$b=getdate($before);
$a=getdate($after);
}
$n=array(1=>31,2=>28,3=>31,4=>30,5=>31,6=>30,7=>31,8=>31,9=>30,10=>31,11=>30,12=>31);
$y=$m=$d=0;
if($a['mday']>=$b['mday']){//天相減為正
if($a['mon']>=$b['mon']){//月相減為正
$y=$a['year']-$b['year'];$m=$a['mon']-$b['mon'];
}else{//月相減為負,借年
$y=$a['year']-$b['year']-1;$m=$a['mon']-$b['mon']+12;
}
$d=$a['mday']-$b['mday'];
}else{//天相減為負,借月
if($a['mon']==1){//1月,借年
$y=$a['year']-$b['year']-1;$m=$a['mon']-$b['mon']+12;$d=$a['mday']-$b['mday']+$n[12];
}else{
if($a['mon']==3){//3月,判斷閏年取得2月天數
$d=$a['mday']-$b['mday']+($a['year']%4==0?29:28);
}else{
$d=$a['mday']-$b['mday']+$n[$a['mon']-1];
}
if($a['mon']>=$b['mon']+1){//借月後,月相減為正
$y=$a['year']-$b['year'];$m=$a['mon']-$b['mon']-1;
}else{//借月後,月相減為負,借年
$y=$a['year']-$b['year']-1;$m=$a['mon']-$b['mon']+12-1;
}
}
}
return($y==0?'':$y.'年').($m==0?'':$m.'個月').($d==0?'':$d.'天');
}
echodatediffage($before,$after)
?>