php计算时间差的函数和演示

277 阅读1分钟

显示效果: "11天13小时52分钟" 因为操作的过程是一样的,所以可以多设置几个变量,写一个公共方法,这里就不做封装了"懒" 使用方法1

           $timepoor=time()-1602928721;
    
             $type=1;
             $date=[
                 ["time"=>365*24*60*60,"name"=>"年前"],
                 ["time"=>30*24*60*60,"name"=>"月前"],
                 ["time"=> 24*60*60,"name"=>"天前"],
                 ["time"=>  60*60,"name"=>"小时前"],
                 ["time"=>  60,"name"=>"分钟前"],
                 ["time"=>  1,"name"=>"秒前"],
                 
                 ];
               echo  getCommentList($timepoor,$date,$type=1) ;

使用方法2

      
               $timepoor=time()-1602928721;
             $zz="";
             $type=2;
             $date=[ 
                 ["time"=>365*24*60*60,"name"=>"年"],
                 ["time"=>30*24*60*60,"name"=>"月"],
                 ["time"=> 24*60*60,"name"=>"天"],
                 ["time"=>  60*60,"name"=>"小时"],
                 ["time"=>  60,"name"=>"分钟"],
                 ["time"=>  1,"name"=>"秒"],
                 
                 ];
                 
                 echo getCommentList($timepoor,$date,$type=2) ;
                 

下面是函数

<?php
 
     
        function getCommentList($timepoor, $date,$type=1) {    
                     $zz="";
                foreach ($date as $key => $value) {
                    if($type==1){
            
                       if($timepoor>$value["time"]&&empty($zz)){
                        $d=$value["time"];
                         if($timepoor/$d>0){
                             $zz.=intval($timepoor/$d).$value["name"];
                             $timepoor=$timepoor-(intval($timepoor/$d)*$d );
                         }
                       }
                        if(!empty($zz)){
                            return $zz;die;
                        }
                    }
                    else if($type==2){
                          
                       if($timepoor>$value["time"]){
                        $d=$value["time"];
                         if($timepoor/$d>0){
                             $zz.=intval($timepoor/$d).$value["name"];
                             $timepoor=$timepoor-(intval($timepoor/$d)*$d );
                         }
                        
                       }
                       
                    } 
                    // code...
                }
                  return $zz;die;
        }
             
?>