源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php计算几分钟前、几小时前、几天前的几个函数、类分享

  • 时间:2020-10-28 09:36 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php计算几分钟前、几小时前、几天前的几个函数、类分享
一、函数实现 实例1:
[u]复制代码[/u] 代码如下:
function time_tran($the_time){    $now_time = date("Y-m-d H:i:s",time()+8*60*60);    $now_time = strtotime($now_time);    $show_time = strtotime($the_time);    $dur = $now_time - $show_time;    if($dur < 0){     return $the_time;    }else{     if($dur < 60){      return $dur.'秒前';     }else{      if($dur < 3600){       return floor($dur/60).'分钟前';      }else{       if($dur < 86400){        return floor($dur/3600).'小时前';       }else{        if($dur < 259200){//3天内         return floor($dur/86400).'天前';        }else{         return $the_time;        }       }  }
实例2:
[u]复制代码[/u] 代码如下:
<?php function format_date($time){     $t=time()-$time;     $f=array(         '31536000'=>'年',         '2592000'=>'个月',         '604800'=>'星期',         '86400'=>'天',         '3600'=>'小时',         '60'=>'分钟',         '1'=>'秒'     );     foreach ($f as $k=>$v)    {         if (0 !=$c=floor($t/(int)$k)) {             return $c.$v.'前';         }     } } ?>
实例3:
[u]复制代码[/u] 代码如下:
function formatTime($date) { $str = ''; $timer = strtotime($date); $diff = $_SERVER['REQUEST_TIME'] - $timer; $day = floor($diff / 86400); $free = $diff % 86400; if($day > 0) { return $day."天前"; }else{ if($free>0){ $hour = floor($free / 3600); $free = $free % 3600; if($hour>0){ return $hour."小时前"; }else{ if($free>0){ $min = floor($free / 60); $free = $free % 60; if($min>0){ return $min."分钟前"; }else{ if($free>0){ return $free."秒前"; }else{ return '刚刚'; } } }else{ return '刚刚'; } } }else{ return '刚刚'; } } }
实例4:
[u]复制代码[/u] 代码如下:
function time_tran($the_time){ $now_time = date("Y-m-d H:i:s",time()+8*60*60); $now_time = strtotime($now_time); $show_time = strtotime($the_time); $dur = $now_time - $show_time; if($dur < 0){ return $the_time; }else{ if($dur < 60){     return $dur.'秒前'; }else{     if($dur < 3600){    return floor($dur/60).'分钟前';     }else{    if($dur < 86400){    return floor($dur/3600).'小时前';    }else{    if($dur < 259200){//3天内        return floor($dur/86400).'天前';    }else{        return $the_time;    }    }     } } } }
二、类的实现
[u]复制代码[/u] 代码如下:
<?php /*  * author: Solon Ring  * time: 2011-11-02  * 发博时间计算(年,月,日,时,分,秒)  * $createtime 可以是当前时间  * $gettime 你要传进来的时间  */ class Mygettime{         function  __construct($createtime,$gettime) {             $this->createtime = $createtime;             $this->gettime = $gettime;     }     function getSeconds()     {             return $this->createtime-$this->gettime;         }     function getMinutes()        {        return ($this->createtime-$this->gettime)/(60);        }       function getHours()        {        return ($this->createtime-$this->gettime)/(60*60);        }       function getDay()        {         return ($this->createtime-$this->gettime)/(60*60*24);        }       function getMonth()        {         return ($this->createtime-$this->gettime)/(60*60*24*30);        }        function getYear()        {         return ($this->createtime-$this->gettime)/(60*60*24*30*12);        }        function index()        {             if($this->getYear() > 1)             {                  if($this->getYear() > 2)                     {                         return date("Y-m-d",$this->gettime);                         exit();                     }                 return intval($this->getYear())." 年前";                 exit();             }              if($this->getMonth() > 1)             {                 return intval($this->getMonth())." 月前";                 exit();             }              if($this->getDay() > 1)             {                 return intval($this->getDay())." 天前";                 exit();             }              if($this->getHours() > 1)             {                 return intval($this->getHours())." 小时前";                 exit();             }              if($this->getMinutes() > 1)             {                 return intval($this->getMinutes())." 分钟前";                 exit();             }            if($this->getSeconds() > 1)             {                 return intval($this->getSeconds()-1)." 秒前";                 exit();             }        }   } //类的使用实例 /*  *  * 调用类输出方式  *  * $a = new Mygettime(time(),strtotime('-25 month'));  * echo iconv('utf-8', 'gb2312', $a->index())?iconv('utf-8', 'gb2312', $a->index()):iconv('utf-8', 'gb2312', '当前');  *  */
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部