php計算兩個時間相差的天數(shù)、小時數(shù)、分鐘數(shù)、秒數(shù)
PHP中計算兩個時間相差的天數(shù)、小時數(shù)、分鐘數(shù)、秒數(shù)不如其它語言方便,但搞清了PHP中時間的表示方法后也很簡單。本文章向大家講解php如何計算時間相差。需要的碼農(nóng)可以參考一下。
先看下面這個網(wǎng)上給的例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
//$startdate是開始時間,$enddate是結(jié)束時間 <?php $startdate = "2011-3-15 11:50:00" ; $enddate = "2012-12-12 12:12:12" ; $date = floor (( strtotime ( $enddate )- strtotime ( $startdate ))/86400); echo "相差天數(shù):" . $date . "天<br/><br/>" ; $hour = floor (( strtotime ( $enddate )- strtotime ( $startdate ))%86400/3600); echo "相差小時數(shù):" . $hour . "小時<br/><br/>" ; $minute = floor (( strtotime ( $enddate )- strtotime ( $startdate ))%86400/60); echo "相差分鐘數(shù):" . $minute . "分鐘<br/><br/>" ; $second = floor (( strtotime ( $enddate )- strtotime ( $startdate ))%86400%60); echo "相差秒數(shù):" . $second . "秒" ; ?> |
不管是自己使用字符串來構(gòu)造的時間類型(使用strtotime轉(zhuǎn)換而來的)也好,還是直接使用系統(tǒng)的time函數(shù)得到的時間類型也好,最終其實都是長整形的一個變量。兩個這樣的變量,就很明顯可以做減法了。
做減法得到值是相差的秒數(shù),這個秒數(shù)對86400(一天的秒數(shù))取余,則得到相差數(shù)。如果對86400取模,還對3600秒、60秒取余,則得到相關(guān)的小時和分鐘數(shù)。如果對86400取模,再對60取模,則得到相差的秒數(shù)。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!