PHP中的日期加减方法示例


Posted in PHP onAugust 21, 2014

几乎所有从事程序开发的程序员都遇到时间处理问题,PHP开发也一样,幸运的是PHP提供了很多关于日期时间函数。只要经常使用这些函数,搭配使用,日期时间处理上就熟能生巧了。

今天要讲的这个例子,需求是这样的。得知某个日期时间,

如:2012-04-25 10:10:00

我要在这个日期时间的基础上加上5个月并返回处理后的日期

结果:2012-04-25 10:10:00 加5个月等于 2012-09-25 10:10:00

这个需求看似简单,但还是有点棘手,因为PHP没有直接提供yyyy-mm-dd hh:ii:ss 这样格式的日期时间进行加减,所以只能通过时间戳来实现。时间戳是程序换算的标准格式,精确到秒。PHP可以将多种日期格式转换为时间戳,又可以把时间戳转换回各种日期格式,结合这两个特点我们大致实现的步骤有三步,先把原来时间转换成时间戳,然后进行加减,最后转换回日期格式。

当然,这是实现原理,结合PHP函数date()与strtotime()两个函数来实现大致也是这个意思,请看实例代码

<?php

/**

 * PHP里的日期加减方法

 * 琼台老屋

 */

// 第一步,假设有一个时间

$a = '2012-04-25 10:10:00';

 

// 第二步,获得这个日期的时间戳

$a_time = strtotime($a);

 

// 第三步,获得加五个月后的时间戳

$b_time = strtotime('+5 Month',$a_time);

 

// 第四部,把时间戳转换回日期格式

$b = date('Y-m-d H:i:s',$b_time);

echo '这是加了五个月后的日期'.$b;

 

// 如果你觉得以上代码过长也可以一行搞定

$b = date('Y-m-d H:i:s',strtotime('+'.$time.' Month',strtotime($a)));

echo '这是加了五个月后的日期'.$b;

?>

关于date()函数与strtotime()函数的使用,这里就不详细介绍了。需要的童鞋可以看我以前的相关函数介绍文章或者到php.net去看手册均可。
PHP 相关文章推荐
文件系统基本操作类
Nov 23 PHP
php实现mysql数据库备份类
Mar 20 PHP
php 全局变量范围分析
Aug 07 PHP
PHP开发负载均衡指南
Jul 17 PHP
深入php处理整数函数的详解
Jun 09 PHP
php中time()和mktime()方法的区别
Sep 28 PHP
codeigniter框架The URI you submitted has disallowed characters错误解决方法
May 06 PHP
mac下Apache + MySql + PHP搭建网站开发环境
Jun 02 PHP
PHP多文件上传类实例
Mar 07 PHP
js代码实现微博导航栏
Jul 30 PHP
Laravel框架自定义公共函数的引入操作示例
Apr 16 PHP
Yii框架应用组件用法实例分析
May 15 PHP
PHP中比较时间大小实例
Aug 21 #PHP
PHP中使用strpos函数实现屏蔽敏感关键字功能
Aug 21 #PHP
PHP中使用sleep函数实现定时任务实例分享
Aug 21 #PHP
PHP实现的多彩标签效果代码分享
Aug 21 #PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 #PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
Aug 21 #PHP
个人写的PHP验证码生成类分享
Aug 21 #PHP
You might like
jQuery+Ajax+PHP“喜欢”评级功能实现代码
2015/10/08 PHP
CodeIgniter基于Email类发邮件的方法
2016/03/29 PHP
原生php实现excel文件读写的方法分析
2018/04/25 PHP
js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)
2009/01/30 Javascript
本地对象Array的原型扩展实现代码
2010/12/04 Javascript
Node.js实现简单聊天服务器
2014/06/20 Javascript
jQuery自带的一些常用方法总结
2014/09/03 Javascript
js简单设置与使用cookie的方法
2016/01/22 Javascript
JavaScript笔记之数据属性和存储器属性
2016/03/31 Javascript
jQuery实现按钮点击遮罩加载及处理完后恢复的效果
2016/06/07 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
总结javascript中的六种迭代器
2016/08/16 Javascript
JavaScript 上传文件(psd,压缩包等),图片,视频的实现方法
2017/06/19 Javascript
vue子父组件通信的实现代码
2017/07/09 Javascript
搭建Python的Django框架环境并建立和运行第一个App的教程
2016/07/02 Python
Python贪吃蛇游戏编写代码
2020/10/26 Python
NumPy 如何生成多维数组的方法
2018/02/05 Python
Python向MySQL批量插数据的实例讲解
2018/03/31 Python
python添加模块搜索路径和包的导入方法
2019/01/19 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
2020/04/10 Python
python 利用zmail库发送邮件
2020/09/11 Python
python常量折叠基础知识点讲解
2021/02/28 Python
美国专业级皮肤病和spa品质护肤品的高级零售网站:SkinCareRx
2017/02/06 全球购物
比利时网上药店: Drogisterij.net
2017/03/17 全球购物
计算机专业个人简短的自我评价
2013/10/23 职场文书
课程设计心得体会
2013/12/28 职场文书
大学毕业生求职自荐信
2014/02/20 职场文书
《开国大典》教学反思
2014/04/19 职场文书
求职信名称怎么写
2014/05/26 职场文书
反腐倡廉标语
2014/06/24 职场文书
2015年评职称工作总结范文
2015/04/20 职场文书
2015年防汛工作总结
2015/05/15 职场文书
优化经济发展环境工作总结
2015/08/11 职场文书
能让Python提速超40倍的神器Cython详解
2021/06/24 Python
vue3种table表格选项个数的控制方法
2022/04/14 Vue.js