本文目錄一覽:
php 計算兩個時間相差多少天
有時可能會碰到這種需求,需要計算兩個日期相隔多少天?
下面這個函數很好的解決了這個問題
?php
/*
*
*函數功能:計算兩個以YYYY-MM-DD為格式的日期,相差多少天(日)
*return int
*/
function getChaBetweenTwoDate($date1,$date2){
$Date_List_a1=explode(“-“,$date1);
$Date_List_a2=explode(“-“,$date2);
$d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]);
$d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]);
$Days=round(($d1-$d2)/3600/24);
return $Days;
}
使用方法如下:
echo getChaBetweenTwoDate(‘2012-11-20′,’1949-10-16’);
以上代碼執行結果將顯示為:
23046
意思即這兩個日期相差 23046 天。
計算php時間相差多少天,多少
/**
* 計算時間差
* @param int $timestamp1 時間戳開始
* @param int $timestamp2 時間戳結束
* @return array
*/
function time_diff($timestamp1, $timestamp2)
{
if ($timestamp2 = $timestamp1)
{
return [‘hours’=0, ‘minutes’=0, ‘seconds’=0];
}
$timediff = $timestamp2 – $timestamp1;
用php計算給定兩個日期相差多少天
:
計算方法不只下面介紹的這些,只是一些比較常規的方法:
上面的php時間日期函數strtotime已經把字元串日期變成了時間戳,這樣只要讓兩數值相減,然後把秒變成天就可以了,比較的簡單,如下:
$days=round(($enddate-$startdate)/3600/24) ;
下面介紹另外一種方法:
上面判斷的是兩個日期的大小,下面則是判斷生日的程序代碼,得到的$n就是相距生日的天數。
$birthday=生日;
$birthday = preg_replace(『/d+/』, Date(『Y』), $birthday, 1);
$d = 60*60*24;
$n= floor((strtotime($birthday)-time())/$d);$n=$n+1;
還有如果相比的是現在的時間,就可以用time()函數,得到的就是現在的時間戳.
第二種情況呢,就是有資料庫,這樣就相對比較容易一些了!如果是MSSQL可以使用觸發器!用專門計算日期差的函數datediff()計算便可!
如果是MYSQL那就用兩個日期欄位的時間戳值,進行計算後便可得到相差的天數了。方法和上面的代碼很像。
怎樣用php實現兩個時間相減,得到相差的天數
?php
$time1 = mktime(10,20,30,2,5,2000); //2000-2-5 10:20:30
$time2 = mktime(18,30,20,5,2,2000); //2000-5-2 18:30:20
$diff = (int)(($time2-$time1)/(24*3600));
echo “$time2 和 $time1 的時間差為:” . $diff . “天br”;
?
原創文章,作者:WUMFL,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/329480.html