php相差天數
① php時間相減獲得剩餘天數小時數分鍾數
兩時間戳相減得到相差時間的秒數,然後轉化成X天X小時X分X秒
<?php
//自定義函數:time2string($second) 輸入秒數換算成多少天/多少小時/多少分/多少秒的字元串
function time2string($second){
$day = floor($second/(3600*24));
$second = $second%(3600*24);//除去整天之後剩餘的時間
$hour = floor($second/3600);
$second = $second%3600;//除去整小時之後剩餘的時間
$minute = floor($second/60);
$second = $second%60;//除去整分鍾之後剩餘的時間
//返回字元串
return $day.'天'.$hour.'小時'.$minute.'分'.$second.'秒';
}
//獲取從現在到2011年11月11日11點11分11秒還有多久
$time1 = strtotime('2011-11-11 11:11:11');
$time2 = strtotime(now);
//相減得到相差的 秒 數
$time3 = $time1 - $time2;
//輸出
echo '從現在到2011年11月11日11點11分11秒還有:'.time2string($time3);
② 用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
/*
*
*函數功能:計算兩個以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 如何計算兩個時間相差幾分鍾,幾小時,幾天,就像論壇裡面的那種
這里有,datediff
http://hi..com/xlpu/blog/item/454f92638ab7d4d4e6113a7d.html
function DateDiff($part, $begin, $end)
$part = y/m/w/d/h/n/s 分別對應 年/月/周/日/時/分/秒
$begin/$end 格式 yyyy-mm-dd hh:nn:ss
strtotime這個是字元串轉時間的函數,如果你不知道,我一並給你
strtotime(time,now)
time 規定要解析的時間字元串。
now 用來計算返回值的時間戳。如果省略該參數,則使用當前時間。
⑤ php計算兩個日期相差多少天
<?php/** * 求兩個日期之間相差的天數 * (針對1970年1月1日之後,求之前可以採用泰勒公式) * @param string $day1 * @param string $day2 * @return number */function diffBetweenTwoDays ($day1, $day2){ $second1 = strtotime($day1); $second2 = strtotime($day2); if ($second1 < $second2) { $tmp = $second2; $second2 = $second1; $second1 = $tmp; } return ($second1 - $second2) / 86400;}$day1 = "2013-07-27";$day2 = "2013-08-04";$diff = diffBetweenTwoDays($day1, $day2);echo $diff."\n";
⑥ PHP中如何用自定義函數計算兩個時間相隔的天數,月數等
先用strtotime()把兩個時間的時間戳算出來,相減,再除一天的秒數,月數怎麼算,要有個規則才行,怎麼算一個月?
⑦ PHP 中 知道開始時間和相隔天數如何計算出結束時間
用時間戳來計算就方便多了 時間戳是精確到秒的
開始時間轉換成時間戳可以使用mktime函數 具體用法參考手冊
計算得到的時間戳是一個數字 用$starttime+相隔天數*24*3600 就能得到結束天數的時間戳
通過 date函數轉換成需要的格式就可以輸出了
⑧ php如何計算當天與某一天相差多少天
<?php
$today=strtotime("2015-6-3000:00:00");//今天
$past=strtotime("2015-5-2000:00:00");//2015-5-20
$dif=ceil(($today-$past)/86400);//60s*60min*24h
echo"相差<strong>$dif</strong>天!";
?>
大概是這樣子了 如果有變化 就是 改變變數的位置
⑨ 怎樣用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>";
?>
⑩ PHP中怎樣計算兩個日期相差的天數
<?php
/**
*求兩個日期之間相差的天數
*(針對1970年1月1日之後,求之前可以採用泰勒公式)
*@paramstring$day1
*@paramstring$day2
*@returnnumber
*/
functiondiffBetweenTwoDays($day1,$day2)
{
$second1=strtotime($day1);
$second2=strtotime($day2);
if($second1<$second2){
$tmp=$second2;
$second2=$second1;
$second1=$tmp;
}
return($second1-$second2)/86400;
}
$day1="2013-07-27";
$day2="2013-08-04";
$diff=diffBetweenTwoDays($day1,$day2);
echo$diff." ";