PHP编程计算日期间隔天数的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP编程计算日期间隔天数的方法。分享给大家供大家参考,具体如下:

刚开始在没有查PHP手册的情况下,用比较老套方法也折腾出来了,代码是这样子实现的:

$date_1 = date('Y-m-d');
$date_2= '2012-07-16';
$date1_arr = explode("-",$date_1);
$date2_arr = explode("-",$date_2);
$day1 = mktime(0,0,0,$date1_arr[1],$date1_arr[2],$date1_arr[0]);
$day2 = mktime(0,0,0,$date2_arr[1],$date2_arr[2],$date2_arr[0]);
$days = round(($day2 - $day1)/3600/24);
echo $days; exit;

后来google了一下  。发现PHP手册里 有个 DATE_DIFF 的方法 ,就是实例化了datetime 的这个类,调用diff这个方法:PHP版本>= 5.3 有效

<?php
$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime('2009-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
?>

<?php
$datetime1 = date_create('2009-10-11');
$datetime2 = date_create('2009-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days');
?>

这两种方法都可以实现。

PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用:

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线日期计算器/相差天数计算器:
http://tools.jb51.net/jisuanqi/datecalc

在线日期天数差计算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php事件驱动化设计详解

本文实例讲述了php事件驱动化设计。分享给大家供大家参考,具体如下: 最近在做一个需要用到异步php的项目, 翻阅php源码的时候,发现了三个没有用过的模块,sysvsem,sysvsh...

PHP中new static() 和 new self() 的区别介绍

长夜漫漫啊! 今天领导本地搭建一个站。发现用PHP 5.2 搭建不起来,站PHP代码里面有很多5.3以上的部分,领导让苦逼我更改在5.2下能运行。 改着改着发现了一个地方 复制代码 代码...

关于php中一些字符串总结

php自带的一个截取字符串的函数,只能处理英文,数字的不能截取中文混排的哦,有需要的朋友可以参考,后面的比较好用,第一个主要是给初学者学学用的。 php //构造字符串 $str...

用PHP将数据导入到Foxmail的实现代码

用PHP将数据导入到Foxmail的实现代码

最近小阳做了一个PHP同学录,同学们自己在那里添加或修改姓名、邮箱、OICQ等信息,并保存在mySQL数据库里。某日小阳突然想到,如果能用PHP生成一个文件,供同学们下载并把这些资料导入...

PHP实现获取客户端IP并获取IP信息

代码很简洁,功能很实用,这里就不多废话了,直接奉上: 复制代码 代码如下: <?php /**  * 获取客户端IP  * @param  i...