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提取视频网站页面中的FLASH地址的代码
Apr 17 PHP
浏览器关闭后,能继续执行的php函数(ignore_user_abort)
Aug 01 PHP
php获取CSS文件中图片地址并下载到本地的方法
Dec 02 PHP
php实现复制移动文件的方法
Jul 29 PHP
浅析Yii2 GridView 日期格式化并实现日期可搜索教程
Apr 22 PHP
PHP AjaxForm提交图片上传并显示图片源码
Nov 29 PHP
Laravel中log无法写入问题的解决
Jun 17 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
Jun 03 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
Sep 04 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
php查看一个变量的占用内存的实例代码
Mar 29 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
使用迭代器 遍历文件信息的详解
2013/06/08 PHP
php配合jquery实现增删操作具体实例
2013/12/12 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
php绘制一个扇形的方法
2015/01/24 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
2016/10/28 PHP
php分页查询的简单实现代码
2017/03/14 PHP
PHP实现 APP端微信支付功能
2018/06/22 PHP
常见的5个PHP编码小陋习以及优化实例讲解
2021/02/27 PHP
jquery scrollTop方法根据滚动像素显示隐藏顶部导航条
2013/05/27 Javascript
LABjs、RequireJS、SeaJS的区别
2014/03/04 Javascript
一个奇葩的最短的 IE 版本判断JS脚本
2014/05/28 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
JavaScript中switch语句的用法详解
2015/06/03 Javascript
js实现浏览本地文件并显示扩展名的方法
2015/08/17 Javascript
JS动态插入并立即执行回调函数的方法
2016/04/21 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
2016/10/15 Javascript
详解Vue2.0 事件派发与接收
2017/09/05 Javascript
10个经典的网页鼠标特效代码
2018/01/09 Javascript
解决百度Echarts图表坐标轴越界的方法
2018/10/17 Javascript
深入浅析Node.js 事件循环、定时器和process.nextTick()
2018/10/22 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
[02:29]DOTA2英雄基础教程 陈
2013/12/17 DOTA
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
[02:43]2018DOTA2亚洲邀请赛主赛事首日TOP5
2018/04/04 DOTA
Python绘制正余弦函数图像的方法
2018/08/28 Python
python3实现在二叉树中找出和为某一值的所有路径(推荐)
2019/12/26 Python
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
Right-on官方网站:日本知名的休闲服装品牌
2019/07/12 全球购物
中专毕业生求职简历的自我评价
2013/10/21 职场文书
《童趣》教学反思
2014/02/19 职场文书
大学共青团员个人自我评价
2014/04/16 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书