首頁 > 後端開發 > php教程 > php实现的DateDiff和DateAdd时间函数代码分享_PHP

php实现的DateDiff和DateAdd时间函数代码分享_PHP

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-05-31 19:30:45
原創
1100 人瀏覽過

扩展php中的时间函数DateDiff和DateAdd

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

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;

}

登入後複製

相關標籤:
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板