Maison > développement back-end > tutoriel php > php计算两个日期相差 年 月 日

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

高洛峰
Libérer: 2016-11-29 10:07:56
original
1088 Les gens l'ont consulté

在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(&#39;-&#39;, $date1); 
    list($y2, $m2, $d2) = explode(&#39;-&#39;, $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(&#39;j&#39;, mktime(0, 0, 0, $m2, 0, $y2)); 
    } 
    $m < 0 && $y -= 1; 
    return array($y, $m, $d); 
} 
?>
Copier après la connexion


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal