PHP時間函數date()的計算方式-教學撰寫:徐嘉裕Neil hsu

date()函數是我們在寫PHP程式中常用到的功能,date()主要是取得伺服器的時間設定數值,常用的方法如下:

//取得當前時間

echo $timedate=date("Y-m-d H:i:s"); //年月日時分秒=Y-m-d H:i:s

輸出結果為當前時間:2018-03-06 14:32:25

//以當前時間進行天數計算

//當前時間計算-時,分,秒,月,日,年 加上10天

echo $timedate=date("Y-m-d H:i:s" , mktime(date("h"),date("i"),date("s"),date("m"),date("d")+10,date("Y")) );

當前時間:2018-03-06 02:38:48
加上10之後時間輸出結果:2018-03-16 02:38:48

如果要減去則吧加改成減即可

echo $timedate=date("Y-m-d H:i:s" , mktime(date("h"),date("i"),date("s"),date("m"),date("d")-10,date("Y")) );

//以自訂時間進行天數計算

這部分就不能用mktime()函數來做計算了,必須要改成用date_sub()跟date_add()

自訂天數加10天

$date = date_create("2018-03-06 02:38:48 "); //自訂天數數值輸入
date_add($date, date_interval_create_from_date_string("10 days"));  //輸入天數
echo $timedate= date_format($date, 'Y-m-d H:i:s');

輸出結果為:2018-03-16 02:38:48

自訂天數減10天

$date = date_create("2018-03-06 02:38:48"); //自訂天數數值輸入
date_sub($date, date_interval_create_from_date_string("10 days"));  //輸入天數
echo $timedate=date_format($date, 'Y-m-d H:i:s');

輸出結果為:2018-02-24 02:38:48

為了方便使用,我們吧這4項功能全部function起來,做成一個函數,這樣只要呼叫函數輸入數值即可做時間判斷。


//時間函數

function timedate($datevar="",$type="",$calculate="",$m="",$d="",$y="") {

switch($type){

case "1":

//當前時間計算-時,分,秒,月,日,年 +天數值

$timedate=date("".$datevar."" , mktime(date("H"),date("i"),date("s"),date("m")+$m,date("d")+$d,date("Y")+$y));

break;

case "2":

//自訂時間計算天數

if($calculate=="-"){

//減去天數

$date = date_create($datevar);

date_sub($date, date_interval_create_from_date_string("{$d} days"));

$timedate=date_format($date, 'Y-m-d H:i:s');

}else{

//加上天數

$date = date_create($datevar);

date_add($date, date_interval_create_from_date_string("{$d} days"));

$timedate= date_format($date, 'Y-m-d H:i:s');

}

break;

default:

//原生時間-Y-m-d H:i:s

$timedate=date("".$datevar."");

}
return $timedate;

}

例如要使用自定時間加天數功能,則呼叫函數輸入值參即可得到結果。

$timedate= timedate($datevar="".自訂時間變數值."",$type="2",$calculate="+",$m="",$d=10,$y="");


有需要的朋友參考看看

教學撰寫:徐嘉裕 Neil hsu

留言

這個網誌中的熱門文章

Xoops免費佈景:neilambilight2.5正式版釋出-佈景設計開發:徐嘉裕Neil hsu

在CentOS7上安裝XAMPP並設定允許外部連線phpmyadmin的方法-教學撰寫:徐嘉裕Neil hsu

jquery.datepicker下拉月曆只顯示年-月的設定方法-教學撰寫:徐嘉裕Neil hsu