php實(shí)現(xiàn)的DateDiff和DateAdd時(shí)間函數(shù)代碼分享
更新時(shí)間:2014年08月16日 10:12:11 投稿:junjie
這篇文章主要介紹了php實(shí)現(xiàn)的DateDiff和DateAdd時(shí)間函數(shù)代碼分享,DateDiff用來計(jì)算兩個(gè)時(shí)間的間隔,DateAdd用來對(duì)兩個(gè)時(shí)間進(jìn)行相加,需要的朋友可以參考下
擴(kuò)展php中的時(shí)間函數(shù)DateDiff和DateAdd
function DateDiff($part, $begin, $end) { $diff = strtotime($end) - strtotime($begin); switch($part) { case "y": $retval = bcdiv($diff, (60 * 60 * 24 * 365)); break; case "m": $retval = bcdiv($diff, (60 * 60 * 24 * 30)); break; case "w": $retval = bcdiv($diff, (60 * 60 * 24 * 7)); break; case "d": $retval = bcdiv($diff, (60 * 60 * 24)); break; case "h": $retval = bcdiv($diff, (60 * 60)); break; case "n": $retval = bcdiv($diff, 60); break; case "s": $retval = $diff; break; } return $retval; } function DateAdd($part, $number, $date) { $date_array = getdate(strtotime($date)); $hor = $date_array["hours"]; $min = $date_array["minutes"]; $sec = $date_array["seconds"]; $mon = $date_array["mon"]; $day = $date_array["mday"]; $yar = $date_array["year"]; switch($part) { case "y": $yar += $number; break; case "q": $mon += ($number * 3); break; case "m": $mon += $number; break; case "w": $day += ($number * 7); break; case "d": $day += $number; break; case "h": $hor += $number; break; case "n": $min += $number; break; case "s": $sec += $number; break; } return date("Y-m-d H:i:s", mktime($hor, $min, $sec, $mon, $day, $yar)); } Function DateAdd($part, $n, $date) { switch($part) { case "y": $val = date("Y-m-d H:i:s", strtotime($date ." +$n year")); break; case "m": $val = date("Y-m-d H:i:s", strtotime($date ." +$n month")); break; case "w": $val = date("Y-m-d H:i:s", strtotime($date ." +$n week")); break; case "d": $val = date("Y-m-d H:i:s", strtotime($date ." +$n day")); break; case "h": $val = date("Y-m-d H:i:s", strtotime($date ." +$n hour")); break; case "n": $val = date("Y-m-d H:i:s", strtotime($date ." +$n minute")); break; case "s": $val = date("Y-m-d H:i:s", strtotime($date ." +$n second")); break; } return $val; }
您可能感興趣的文章:
- PHP與Java對(duì)比學(xué)習(xí)日期時(shí)間函數(shù)
- php時(shí)間函數(shù)用法分析
- php實(shí)現(xiàn)求相對(duì)時(shí)間函數(shù)
- php時(shí)間戳格式化顯示友好的時(shí)間函數(shù)分享
- PHP函數(shù)之日期時(shí)間函數(shù)date()使用詳解
- php date()日期時(shí)間函數(shù)詳解
- php checkdate、getdate等日期時(shí)間函數(shù)操作詳解
- PHP 日期時(shí)間函數(shù)的高級(jí)應(yīng)用技巧
- PHP日期時(shí)間函數(shù)的高級(jí)應(yīng)用技巧
- 使用PHP的日期與時(shí)間函數(shù)技巧
- php Mysql日期和時(shí)間函數(shù)集合
- PHP 常用時(shí)間函數(shù)資料整理
相關(guān)文章
PHP數(shù)據(jù)流應(yīng)用的一個(gè)簡單實(shí)例
PHP數(shù)據(jù)流應(yīng)用的一個(gè)簡單實(shí)例代碼,需要的朋友可以參考下2012-09-09Yii框架調(diào)試心得--在頁面輸出執(zhí)行sql語句
這篇文章主要介紹了Yii框架調(diào)試心得--在頁面輸出執(zhí)行sql語句,需要的朋友可以參考下2014-12-12php自動(dòng)識(shí)別文字編碼并轉(zhuǎn)換為目標(biāo)編碼的方法
這篇文章主要介紹了php自動(dòng)識(shí)別文字編碼并轉(zhuǎn)換為目標(biāo)編碼的方法,涉及php針對(duì)當(dāng)前編碼的判斷與對(duì)應(yīng)的編碼轉(zhuǎn)換實(shí)現(xiàn)技巧,需要的朋友可以參考下2015-08-08PHP從二維數(shù)組得到N層分類樹的實(shí)現(xiàn)代碼
這篇文章主要介紹了PHP從二維數(shù)組得到N層分類樹的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-10-10PHP常見錯(cuò)誤提示含義解釋(實(shí)用!值得收藏)
這篇文章主要介紹了PHP常見錯(cuò)誤提示含義解釋,包含了各種常見的PHP錯(cuò)誤提示及具體含義,便于查詢參考,需要的朋友可以參考下2016-04-04PHP正則匹配操作簡單示例【preg_match_all應(yīng)用】
這篇文章主要介紹了PHP正則匹配操作,結(jié)合簡單實(shí)例形式分析了php中preg_match_all針對(duì)HTML標(biāo)簽中P元素及img src元素內(nèi)容的獲取技巧,需要的朋友可以參考下2017-07-07PHP 使用二進(jìn)制保存用戶狀態(tài)的實(shí)例
下面小編就為大家分享一篇PHP 使用二進(jìn)制保存用戶狀態(tài)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-01-01