zl程序教程

您现在的位置是:首页 >  后端

当前栏目

PHP中的日期加减方法示例

PHP日期方法 示例 加减
2023-06-13 09:15:43 时间

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

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

如:2012-04-2510:10:00

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

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

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

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

复制代码代码如下:

<?php
/**
 *PHP里的日期加减方法
 *琼台老屋
 */
//第一步,假设有一个时间
$a="2012-04-2510:10:00";
 
//第二步,获得这个日期的时间戳
$a_time=strtotime($a);
 
//第三步,获得加五个月后的时间戳
$b_time=strtotime("+5Month",$a_time);
 
//第四部,把时间戳转换回日期格式
$b=date("Y-m-dH:i:s",$b_time);
echo"这是加了五个月后的日期".$b;
 
//如果你觉得以上代码过长也可以一行搞定
$b=date("Y-m-dH:i:s",strtotime("+".$time."Month",strtotime($a)));
echo"这是加了五个月后的日期".$b;
?>

关于date()函数与strtotime()函数的使用,这里就不详细介绍了。需要的童鞋可以看我以前的相关函数介绍文章或者到php.net去看手册均可。