首页 » 建站技术 » PHP 技术 » 浏览内容

php把时间计算成几分钟前,几小时前,几天前的函数


2011-11-01 20:09:24 3,296 0 发表评论 字体: 作者:C.K.
标签: php函数

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。
<?php
  • //计算时间,规则如下,如果一小时内,显示分钟,如果大于1小时小于1天显示小时,如果大于天且小于3天,显示天数,否则显示日期时间
  • function time_aaa($s){
  •     $m=0;$hr=0;$d=0;$td="now";
  •     if($s>59) {
  •         $m = (int)($s/60);
  •         $s = $s-($m*60); // sec left over
  •         $td = "$m 秒钟前";
  •     }
  •     if($m>59){
  •         $hr = (int)($m/60);
  •         $m = $m-($hr*60); // min left over
  •         $td = "$hr 小时"; if($hr>1) $td .= "";
  •         if($m>0) $td .= ", $m 分钟前";
  •     }
  •     if($hr>23){
  •         $d = (int)($hr/24);
  •         $hr = $hr-($d*24); // hr left over
  •         $td = "$d 天"; if($d>1) $td .= "";
  •         if($d<3){
  •             if($hr>0) $td .= ", $hr 小时前"; if($hr>1) $td .= "";
  •         }
  •     }
  •     return $td;
  • }
  • //调用方法
  •  
  • $now_time = date("Y-m-d H:i:s",time());
  • $timestamp1 = strtotime($now_time); //转换成Unix 时间戳
  • $timestamp2 = $row['time'];//另一个变量,是Unix 时间戳
  • $rd = $timestamp1-$timestamp2;
  •  // has to be a positive result
  •  if($rd > 259200){
  •       $td = date("Y-m-d H:i:s",$row['time']);
  •         } else
  •         {
  •             $td = time_aaa($rd);
  •         }
  • $td .= ($td=="now")? "":""; // in this example "ago"
  • echo $td; // 输出
  • ?>

    网站统计 Statistics

    • 创建时间: 2005年1月3日 距今5089 天
    • 日志总数: 2461
    • 评论总数: 630
    • 标签总数: 654
    • 链接总数: 273
    • 最后更新: 2018-8-31 17:57:04
    • 您是本站第 14251928 位访客

    广告区 Guǎng Gào