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 相关文章推荐
轻松修复Discuz!数据库
May 03 PHP
PHP中source #N问题的解决方法
Jan 27 PHP
php实现的漂亮分页方法
Apr 17 PHP
php+xml编程之SimpleXML的应用实例
Jan 24 PHP
分享一则PHP定义函数代码
Feb 26 PHP
PHP网络操作函数汇总
May 18 PHP
在Debian系统下配置LNMP的教程
Jul 09 PHP
YII2.0之Activeform表单组件用法实例
Jan 09 PHP
php中各种定义变量的方法小结
Oct 18 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
Sep 05 PHP
php微信公众号开发之秒杀
Oct 20 PHP
laravel-admin select框默认选中的方法
Oct 03 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 Parse Error: syntax error, unexpected $end 错误的解决办法
2012/06/05 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
2013/11/07 PHP
php获取百度收录、百度热词及百度快照的方法
2015/04/02 PHP
Laravel 5框架学习之Blade 简介
2015/04/08 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
2017/03/09 PHP
PHP通过文件路径获取文件名的实例代码
2018/10/14 PHP
基于jquery实现的服务器验证控件的启用和禁用代码
2010/04/27 Javascript
jquery.Ajax()方法调用Asp.Net后台的方法解析
2014/02/13 Javascript
node.js中的buffer.toJSON方法使用说明
2014/12/14 Javascript
使用Node.js给图片加水印的方法
2016/11/15 Javascript
详解如何使用Vue2做服务端渲染
2017/03/29 Javascript
简单的vuex 的使用案例笔记
2018/04/13 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
微信小程序实现手势滑动效果
2019/08/26 Javascript
原生js实现点击按钮复制内容到剪切板
2020/11/19 Javascript
视觉直观感受若干常用排序算法
2017/04/13 Python
Windows 64位下python3安装nltk模块
2018/09/19 Python
Python中整数的缓存机制讲解
2019/02/16 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
Python基础学习之类与实例基本用法与注意事项详解
2019/06/17 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
pycharm配置git(图文教程)
2019/08/16 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
pandas数据拼接的实现示例
2020/04/16 Python
VScode连接远程服务器上的jupyter notebook的实现
2020/04/23 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
2020/06/10 Python
戴尔新西兰官网:Dell New Zealand
2020/01/07 全球购物
贝佳斯官方网站:Borghese
2020/05/08 全球购物
公司前台接待岗位职责
2013/12/03 职场文书
社区优秀志愿者材料
2014/02/02 职场文书
新年寄语大全
2014/04/12 职场文书
庆祝儿童节标语
2014/10/09 职场文书
滴水洞导游词
2015/02/10 职场文书
win10下go mod配置方式
2021/04/25 Golang
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis
JS前端使用canvas实现扩展物体类和事件派发
2022/08/05 Javascript