您好,欢迎访问一九零五行业门户网

php计算多长时间前发的内容2个函数

下面整理了两个用来计算用户发内容的时间,这里以分钟超,然后就是天数了,两个例子中,例子1只以计算昨天然后就是直接显示日期了,而后一个例子可以计算多少天前,并且文章最后对时区进行了介绍,告诉你在设置时间前一定要把php.ini时区设置好才行。
例子,
多长时间前的时间函数,论坛,博客常用
 代码如下 复制代码
function timefromnow($dateline) {
    if(empty($dateline)) return false;
    $seconds = time() - $dateline;
    if ($seconds    return 1分钟前;
    }elseif($seconds    return floor($seconds/60).分钟前;
    }elseif($seconds     return floor($seconds/3600).小时前;
    }elseif($seconds    return date(昨天 h:i, $dateline).;
    }else{
   return date('y-m-d', $dateline);
    }
}
echo timefromnow(strtotime(2012-07-07 14:15:13)); //昨天 14:15
echo timefromnow(strtotime(2012-07-08 14:15:13)); //1小前
注:这里没有考虑到时区。
后来在网上看到一段代码
代码如下 复制代码
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     return $the_time;
   }else{
    if($dur return $dur.'秒前';
    }else{
if($dur  return floor($dur/60).'分钟前';
}else{
 if($dur   return floor($dur/3600).'小时前';
 }else{
  if($dur    return floor($dur/86400).'天前';
  }else{
   return $the_time;
  }
 }
}
最后补充时区
在 php.ini 中,默认是 date.timezone = utc。修改为中国时区,修改为 date.timezone = prc。如果直接写 gmt 格式的,是 date.timezone = etc/gmt+8。
另外,也可以在 php 页面头中设置。
date_default_timezone_set('prc');
测试:
echo date('y-m-d h:i:s');
其它类似信息

推荐信息