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 相关文章推荐
用PHP的ob_start();控制您的浏览器cache!
Feb 14 PHP
php数组函数序列之rsort() - 对数组的元素值进行降序排序
Nov 02 PHP
php连接函数implode与分割explode的深入解析
Jun 26 PHP
PHP动态编译出现Cannot find autoconf的解决方法
Nov 05 PHP
php绘制一条直线的方法
Jan 24 PHP
初识通用数据库操作类――前端easyui-datagrid,form(php)
Jul 31 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
Oct 16 PHP
PHP+redis实现微博的拉模型案例详解
Jul 10 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
Oct 11 PHP
PHP查找一列有序数组是否包含某值的方法
Feb 07 PHP
TP5框架页面跳转样式操作示例
Apr 05 PHP
PHP代码覆盖率统计详解
Jul 22 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
ADODB的数据库封包程序库
2006/12/31 PHP
dedecms系统常用术语汇总
2007/04/03 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
2009/07/09 PHP
PHP抓屏函数实现屏幕快照代码分享
2014/01/02 PHP
PHP 如何获取二维数组中某个key的集合
2014/06/03 PHP
php实现模拟登陆方正教务系统抓取课表
2015/05/19 PHP
PHP配置把错误日志以邮件方式发送方法(Windows系统)
2015/06/23 PHP
Javascript常用运算符(Operators)-javascript基础教程
2007/12/14 Javascript
firefox火狐浏览器与与ie兼容的2个问题总结
2010/07/20 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
jquery缓动swing liner控制动画过程不同时刻的速度
2014/05/29 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
VUEJS实战之修复错误并且美化时间(2)
2016/06/13 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
2016/06/20 Javascript
Jquery获取当前城市的天气信息
2016/08/05 Javascript
AngularJS实现Input格式化的方法
2016/11/07 Javascript
Angular使用操作事件指令ng-click传多个参数示例
2018/03/27 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
Jquery属性的获取/设置及样式添加/删除操作技巧分析
2019/12/23 jQuery
django ManyToManyField多对多关系的实例详解
2019/08/09 Python
python 实现视频 图像帧提取
2019/12/10 Python
python 利用openpyxl读取Excel表格中指定的行或列教程
2021/02/06 Python
瑞贝卡·泰勒官方网站:Rebecca Taylor
2016/09/24 全球购物
实体的生命周期
2013/08/31 面试题
校长岗位职责
2013/11/26 职场文书
公司年会演讲稿范文
2014/01/11 职场文书
售后服务经理岗位职责
2014/02/25 职场文书
公安学专业求职信
2014/07/27 职场文书
2019企业文化管理制度范本!
2019/08/06 职场文书
springboot集成flyway自动创表的详细配置
2021/06/26 Java/Android
SpringBoot工程下使用OpenFeign的坑及解决
2021/07/02 Java/Android
《勇者辞职不干了》上卷BD发售宣传CM公开
2022/04/08 日漫
CSS中float高度塌陷问题的四种解决方案
2022/04/18 HTML / CSS