zoukankan      html  css  js  c++  java
  • PHP时间比较和时间差如何计算

    1.<?php   
    2. $zero1=date(“y-m-d h:i:s”);   
    3. $zero2=”2010-11-29 21:07:00′;   
    4. echo “zero1的时间为:”.$zero1.”<br>”;   
    5. echo “zero2的时间为:”.$zero2.”<br>”;   
    6. if(strtotime($zero1)<strtotime($zero2)){   
    7.  echo “zero1早于zero2′;   
    8. }else{   
    9.  echo “zero2早于zero1′;   
    10. }   
    11. ?>  
     

    上面是比较两个绝对时间的大小

     
    <?php   
    $zero1=strtotime (date("y-m-d h:i:s")); //当前时间  ,注意H 是24小时 h是12小时 
    $zero2=strtotime ("2014-1-21 00:00:00");  //过年时间,不能写2014-1-21 24:00:00  这样不对 
    $guonian=ceil(($zero2-$zero1)/86400); //60s*60min*24h   
    echo "离过年还有<strong>$guonian</strong>天!";   
    ?>  
    复制代码

    上面是倒计时小程序 实例代码

    复制代码
    <?php
    //PHP计算两个时间差的方法 
    $startdate="2010-12-11 11:40:00";
    $enddate="2012-12-12 11:45:09";
    $date=floor((strtotime($enddate)-strtotime($startdate))/86400);
    $hour=floor((strtotime($enddate)-strtotime($startdate))%86400/3600);
    $minute=floor((strtotime($enddate)-strtotime($startdate))%86400/60);
    $second=floor((strtotime($enddate)-strtotime($startdate))%86400%60);
    echo $date."天<br>";
    echo $hour."小时<br>";
    echo $minute."分钟<br>";
    echo $second."秒<br>";
    
    ?>
    复制代码

     

    <?php
    /**
     * 时间差计算
     *
     * @param Timestamp $time
     * @return String Time Elapsed
     * @author Shelley Shyan
     * @copyright http://phparch.cn (Professional PHP Architecture)
     */
    function time2Units ($time)
    {
       $year   floor($time 60 60 24 365);
       $time  -= $year 60 60 24 365;
       $month  floor($time 60 60 24 30);
       $time  -= $month 60 60 24 30;
       $week   floor($time 60 60 24 7);
       $time  -= $week 60 60 24 7;
       $day    floor($time 60 60 24);
       $time  -= $day 60 60 24;
       $hour   floor($time 60 60);
       $time  -= $hour 60 60;
       $minute floor($time 60);
       $time  -= $minute 60;
       $second $time;
       $elapse '';

       $unitArr = array('年'  =>'year''个月'=>'month',  '周'=>'week''天'=>'day',
                        '小时'=>'hour''分钟'=>'minute''秒'=>'second'
                        );

       foreach ( $unitArr as $cn => $u )
       {
           if ( $$u )
           {
               $elapse = $$u $cn;
               break;
           }
       }

       return $elapse;
    }

    $past = 2052345678; // Some timestamp in the past $now  = time();     // Current timestamp $diff = $now - $past; echo '发表于' . time2Units($diff) . '前'; ?>

  • 相关阅读:
    TYVJ1061 Mobile Service
    TYVJ1061 Mobile Service
    KMP 模板
    poj 3254 Corn Field
    poj 3254 Corn Field
    洛谷1279 字串距离
    poj 1041 John's trip——欧拉回路字典序输出
    bzoj 3033 太鼓达人——欧拉图搜索
    bzoj 2503 相框——思路
    bzoj 2935 [Poi1999]原始生物——欧拉回路思路!
  • 原文地址:https://www.cnblogs.com/jiaosq/p/5625004.html
Copyright © 2011-2022 走看看