PHP 日期加减的类,很不错


Posted in PHP onOctober 10, 2009

如何使用这个类呢?请看下面的演示:

$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 );

$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 ;

$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 ; 
} 
} 
?>
PHP 相关文章推荐
sourcesafe管理phpproj文件的补充说明(downmoon)
Apr 11 PHP
c#中的实现php中的preg_replace
Dec 21 PHP
PHP优于Node.js的五大理由分享
Sep 15 PHP
一个php短网址的生成代码(仿微博短网址)
May 07 PHP
php使用正则过滤js脚本代码实例
May 10 PHP
php通过array_merge()函数合并关联和非关联数组的方法
Mar 18 PHP
php实现简单的MVC框架实例
Sep 23 PHP
PHP面试题之文件目录操作
Oct 15 PHP
php实现生成code128条形码的方法详解
Jul 19 PHP
php app支付宝回调(异步通知)详解
Jul 25 PHP
Discuz不使用插件实现简单的打赏功能
Mar 21 PHP
PHP+iframe模拟Ajax上传文件功能示例
Jul 02 PHP
全世界最小的php网页木马一枚 附PHP木马的防范方法
Oct 09 #PHP
PHP 字符串分割和比较
Oct 06 #PHP
PHP parse_url 一个好用的函数
Oct 03 #PHP
php面向对象全攻略 (十七) 自动加载类
Sep 30 #PHP
php面向对象全攻略 (十六) 对象的串行化
Sep 30 #PHP
php面向对象全攻略 (十五) 多态的应用
Sep 30 #PHP
php面向对象全攻略 (十四) php5接口技术
Sep 30 #PHP
You might like
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
JS 控制非法字符的输入代码
2009/12/04 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
表单序列化与jq中的serialize使用示例
2014/02/21 Javascript
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
基于NodeJS的前后端分离的思考与实践(三)轻量级的接口配置建模框架
2014/09/26 NodeJs
jQuery自定义添加&quot;$&quot;与解决&quot;$&quot;冲突的方法
2015/01/19 Javascript
javascript中setTimeout使用指南
2015/07/26 Javascript
实例代码详解jquery.slides.js
2015/11/16 Javascript
jQuery中text() val()和html()的区别实例详解
2016/06/28 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
基于Vue 2.0的模块化前端 UI 组件库小结
2017/12/21 Javascript
React教程之封装一个Portal可复用组件的方法
2018/01/02 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
[40:55]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#4Newbee VS Fnatic
2016/03/03 DOTA
Python爬虫包BeautifulSoup学习实例(五)
2018/06/17 Python
pygame实现雷电游戏雏形开发
2018/11/20 Python
pygame游戏之旅 按钮上添加文字的方法
2018/11/21 Python
用python拟合等角螺线的实现示例
2019/12/27 Python
使用python的turtle函数绘制一个滑稽表情
2020/02/28 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
基于Python测试程序是否有错误
2020/05/16 Python
selenium切换标签页解决get超时问题的完整代码
2020/08/30 Python
python matplotlib库的基本使用
2020/09/23 Python
中国茶叶、茶具一站式网上购物商城:醉品茶城
2018/07/03 全球购物
英国儿童设计师服装和玩具购物网站:Zac & Lulu
2020/10/19 全球购物
微信营销策划方案
2014/02/24 职场文书
园林设计专业毕业生求职信
2014/03/23 职场文书
中职招生先进个人材料
2014/08/31 职场文书
初中教师德育工作总结2015
2015/05/12 职场文书
民事撤诉申请书范本
2015/05/18 职场文书
2016大学迎新晚会开场白
2015/11/24 职场文书
2016幼儿园教师节新闻稿
2015/11/25 职场文书