php计算两个日期相差 年 月 日

  在PHP程序中,很多时候都会遇到处理时间的问题,比如:判断用户在线了多长时间,共登录了多少天,两个帖子发布的时间差或者是不同操作之间的日志记录等等。在文章中,简单地举例介绍了PHP中如何计算两个日期相差 年、月、日。

转自: http://www.php1.cn/Content/php_JiSuanLiangGeRiQiXiangChaNianYueRi.html

/**

  +----------------------------------------------------------

 * 功能:计算两个日期相差 年 月 日

  +----------------------------------------------------------

 * @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);

}

时间: 2024-12-24 20:43:40

php计算两个日期相差 年 月 日的相关文章

计算两个日期相差年月日

1 /** 2 +---------------------------------------------------------- 3 * 功能:计算两个日期相差 年 月 日 4 +---------------------------------------------------------- 5 * @param date $date1 起始日期 6 * @param date $date2 截止日期日期 7 +-------------------------------------

MySQL计算两个日期相差的天数、月数、年数

MySQL自带的日期函数TIMESTAMPDIFF计算两个日期相差的秒数.分钟数.小时数.天数.周数.季度数.月数.年数,当前日期增加或者减少一天.一周等等. SELECT TIMESTAMPDIFF(类型,开始时间,结束时间) 相差的秒数: SELECT TIMESTAMPDIFF(SECOND,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S')) 相差的分钟数: SELECT TIMESTAMPDIFF(MINUTE,'

计算两个日期相差

package com.xcfh.util; import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar; /** *  * @ClassName: DateMargin *  * @Description: 计算两个日期相差天数 * @author PineT

Java 计算两个日期相差月数、天数

package com.myjava; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; public class MyCalendar { /** * @param args * @throws ParseException */ public static void main(String[] args) throws ParseException {

Java计算两个日期相差的天数

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class test16 { /** * @param args * @throws ParseException */ public static void main(String[] args) throws ParseException { /

Java 计算两个日期相差的天数

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class test16 { /** * @param args * @throws ParseException */ public static void main(String[] args) throws ParseException { /

实现:判断日期之间关系(相交,相离,重合),得到相交重合的天数以及计算两个日期相差的天数

package com.xiawei.repeatdays; import java.util.Date; /** * 判断日期之间关系(相交,相离,重合),得到相交重合的天数 * */public class RepeatDays { /** * 将两个日期相减的结果以字符串秒的格式返回 */ public static String getDayDifference(Date d1 , Date d2){ StringBuffer ds = new StringBuffer(); long

计算两个日期相差多少天

1 #include<stdio.h> 2 #include<stdlib.h> 3 4 #define DayOfyear 365 5 6 #define ISLEAP(year) ((year % 4 = 0 && year % 100 != 0) || year % 400 == 0) 7 8 int isLeap(int year); 9 int dayOftheYear(int year, int month, int day); 10 int diff(

mysql计算两个日期相差的天数。

DATEDIFF() 函数可以返回两个日期之间的天数. 如下: SELECT DATEDIFF('2015-06-29','2015-06-12') AS DiffDate 结果得17 SELECT DATEDIFF('2015-06-12','2015-06-29') AS DiffDate 结果得-17