PHP中对日期操作的函数功能强大,下面的代码是PHP对日期加减的类,很不错,有需要的朋友可以用一下。
如何使用这个类呢?请看下面的演示:
如果一切顺利,你可以看到以下结果:
15h41 Saturday 03 Jun
16h31 Saturday 03 Jun
如果一切顺利,你可以看到以下结果:
Current time: 16h23 Saturday 03 Jun
Time plus 50 minutes: 17h13 Saturday 03 Jun
Interval between two times: 50
如何使用这个类呢?请看下面的演示:
- $temptime = time();
- echo strftime( "%Hh%M %A %d %b",$temptime);
- $date = new DateAccount();
- $temptime = $date->DateAdd("n" ,50,$temptime);
- echo "<p>";
- echo strftime( "%Hh%M %A %d %b",$temptime);
如果一切顺利,你可以看到以下结果:
15h41 Saturday 03 Jun
16h31 Saturday 03 Jun
- $currenttime = time();
- echo "Current time: ". strftime("%Hh%M %A %d %b" ,$currenttime)."<br>";
- $date = new DateAccount();
- $newtime = $date->DateAdd ("n",50 ,$currenttime);
- echo "Time plus 50 minutes: ". strftime("%Hh%M %A %d %b" ,$newtime)."<br>";
- $temptime = $date->DateDiff ("n",$currenttime ,$newtime);
- echo "Interval between two times: ".$temptime;
如果一切顺利,你可以看到以下结果:
Current time: 16h23 Saturday 03 Jun
Time plus 50 minutes: 17h13 Saturday 03 Jun
Interval between two times: 50
- <?php
- class DateAccount{
- function __construct(){
- }
- function DateAdd ($interval,$number, $date) {
- $date_time_array = getdate($date);
- $hours = $date_time_array["hours"];
- $minutes = $date_time_array["minutes"];
- $seconds = $date_time_array["seconds"];
- $month = $date_time_array["mon"];
- $day = $date_time_array["mday"];
- $year = $date_time_array["year"];
- switch ($interval) {
- case "yyyy": $year +=$number; break;
- case "q": $month +=($number*3); break;
- case "m": $month +=$number; break;
- case "y":
- case "d":
- case "w": $day+=$number; break;
- case "ww": $day+=($number*7); break;
- case "h": $hours+=$number; break;
- case "n": $minutes+=$number; break;
- case "s": $seconds+=$number; break;
- }
- $timestamp = mktime($hours ,$minutes, $seconds,$month ,$day, $year);
- return $timestamp;
- }
- function DateDiff ($interval,$date1,$date2) {
- $timedifference = $date2 - $date1;
- switch ($interval) {
- case "w": $retval = bcdiv($timedifference ,604800); break;
- case "d": $retval = bcdiv( $timedifference,86400); break;
- case "h": $retval = bcdiv ($timedifference,3600); break;
- case "n": $retval = bcdiv( $timedifference,60); break;
- case "s": $retval = $timedifference; break;
- }
- return $retval;
- }
- }
- ?>
浙公网安备 33010602011771号