php专区

 首页 > php专区 > PHP高级 > 日期 > PHP计算时间差 显示用户发表评论时间 - php日期

PHP计算时间差 显示用户发表评论时间 - php日期

分享到:
【字体:
导读:
         [导读] 前段时间做一个APP后台时用户要求用户的评论以xx分钟前这种格式显示,给用户以良好的体验,于是笔者写了一个函数,本函数主要是利用PHP计算两个时间之间的差值,通过差值来转换,虽然代...

PHP计算时间差 显示用户发表评论时间

前段时间做一个APP后台时用户要求用户的评论以xx分钟前这种格式显示,给用户以良好的体验,于是笔者写了一个函数,本函数主要是利用PHP计算两个时间之间的差值,通过差值来转换,虽然代码很简单,但是很实用.PHP实例代码如下:

  1. /** 
  2.  * 时间差计算 
  3.  * 
  4.  * @param Timestamp $time 时间差 
  5.  * @return String Time Elapsed 
  6.  * @author jakehu  
  7.  */ 
  8. function time2Units ($time
  9. $year   = floor($time / 60 / 60 / 24 / 365); 
  10. $time  -= $year * 60 * 60 * 24 * 365; 
  11. $month  = floor($time / 60 / 60 / 24 / 30); 
  12. $time  -= $month * 60 * 60 * 24 * 30; 
  13. $week   = floor($time / 60 / 60 / 24 / 7); 
  14. $time  -= $week * 60 * 60 * 24 * 7; 
  15. $day    = floor($time / 60 / 60 / 24); 
  16. $time  -= $day * 60 * 60 * 24; 
  17. $hour   = floor($time / 60 / 60); 
  18. $time  -= $hour * 60 * 60; 
  19. $minute = floor($time / 60); 
  20. $time  -= $minute * 60; 
  21. $second = $time
  22. $elapse = ''
  23.  
  24. $unitArr = array('年前'  =>'year''个月前'=>'month',  '周前'=>'week''天前'=>'day'
  25. '小时前'=>'hour''分钟前'=>'minute''秒前'=>'second' 
  26. ); 
  27.  
  28. foreach ( $unitArr as $cn => $u ) 
  29. if ( $year > 0 ) {//大于一年显示年月日 
  30. $elapse = date('Y/m/d',time()-$time); 
  31. break
  32. else if ( $$u > 0 ) 
  33. $elapse = $$u . $cn
  34. break
  35.  
  36. return $elapse
  37.  
  38. $past = 1390000000; //起点时间 
  39. $diff = time() - $past;//时间差 
  40.  
  41. echo '发表于' . time2Units($diff) . '前'
  42. ?> 
分享到:
php日期转中文程序代码 - php日期
php日期转中文程序代码 我们用到最多的日志肯定是数字型的日期了,但有时工作需要要把日期转换成中文要怎么处理?下面一起来看一个php日期转中文程序代码吧. 如果我们直接使用date函数获取日期显示的是数字的,代码如下:   //输出的  //2014-10-11  那么我们如果想得到:二零...
PHP获取本周第一天和最后一天 - php日期
PHP获取本周第一天和最后一天 用PHP获取本周第一天和最后一天,网上有很多方法,但是太麻烦,或者有bug,这是用php自带的DateTime类实现的方法,比较简单: //本周的第一天和最后一天  $date=new DateTime();  $date->modify('this week');  $first_day_of_week=$date->f...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……