php计算两个日期时间差(返回年、月、日)
发布:smiling 来源: PHP粉丝网 添加日期:2021-02-22 16:06:07 浏览: 评论:0
这篇文章主要介绍了php计算两个日期时间差(返回年、月、日),实现了类似微博中的多少天、多少月、多少前前功能,需要的朋友可以参考下。
在PHP程序中,很多时候都会遇到处理时间的问题,比如:判断用户在线了多长时间,共登录了多少天,两个帖子发布的时间差或者是不同操作之间的日志记录等等。在文章中,简单地举例介绍了PHP中如何计算两个日期相差 年、月、日。
- <?php
- /**
- +----------------------------------------------------------
- * 功能:计算两个日期相差 年 月 日
- +----------------------------------------------------------
- * @param date $date1 起始日期
- * @param date $date2 截止日期日期
- +----------------------------------------------------------
- * @return array
- +----------------------------------------------------------
- */
- function DiffDate($date1, $date2) {
- if (strtotime($date1) > strtotime($date2)) {
- $ymd = $date2;
- $date2 = $date1;
- $date1 = $ymd;
- }
- list($y1, $m1, $d1) = explode('-', $date1);
- list($y2, $m2, $d2) = explode('-', $date2);
- $y = $m = $d = $_m = 0;
- $math = ($y2 - $y1) * 12 + $m2 - $m1;
- $y = round($math / 12);
- $m = intval($math % 12);
- $d = (mktime(0, 0, 0, $m2, $d2, $y2) - mktime(0, 0, 0, $m2, $d1, $y2)) / 86400;
- if ($d < 0) {
- $m -= 1;
- $d += date('j', mktime(0, 0, 0, $m2, 0, $y2));
- }
- $m < 0 && $y -= 1;
- return array($y, $m, $d);
- }
- ?>
Tags: php计算两个日期时间差
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)