PHP擷取時間差函數

來源:互聯網
上載者:User

//計算距公元1年1月1日的天數,$yyyy年分,$mm月份,$dd日<br />function datelocal($yyyy,$mm,$dd){<br />$monthdays = array(31,28,31,30,31,30,31,31,30,31,30,31); //非閏年的月份天數<br />//判斷是否為閏年,閏年$leapyear = 1,否則 $leapyear = 0<br />if($yy%4==0 && $yyyy%100!=0 || $yyyy%400==0)<br />$leapyear = 1;<br />else<br />$leapyear = 0;<br />//計算距公元1年1月1日的天數: 年天數+月天數+日天數<br />$days = ($yyyy-1)*365 + floor(($yyyy-1)/4) - floor(($yyyy-1)/100) + floor(($yyyy-1)/400);<br />for($i=1;$i<=$mm;$i++){<br />$days += $monthdays[$i-2];<br />if($leapyear==1 && $i==3) //所在年份為閏年,且月份超過2月:28天+1天<br />$days += 1;<br />}<br />$days += $dd -1;<br />return $days;<br />}<br />//計算 $yyyy2-$mm2-$dd2, $yyyy1-$mm1-$dd1 相差天數<br />function datediff($yyyy2,$mm2,$dd2,$yyyy1,$mm1,$dd1){<br />$daysdiff = abs(datelocal($yyyy2,$mm2,$dd2) - datelocal($yyyy1,$mm1,$dd1));<br />return $daysdiff;<br />}<br />echo datediff(2008,5,10,2009,5,1);

 

轉自:http://www.drulanz.com/website-build/lamp/phpdaysdiff/

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.