时间刚好是5分钟前,则对应的时间戳就会被格式化为5分钟前,自定义的格式化时间方法如下,感兴趣的朋友可以参考下
如:时间刚好是5分钟前,则对应的时间戳就会被格式化为5分钟前,不多说了,直接贴上代码:
/** * 格式化时间 * @param integer $timestamp 时间戳 * @param string $format dt=日期时间 d=日期 t=时间 u=个性化 其他=自定义 * @param integer $timeoffset 时区值 * @param string $custom_format 自定义时间格式 * @return string html' target='_blank'>public function dgmdate( $timestamp, $format = dt , $timeoffset = 9999 , $custom_format = ) { $return = $now = time(); $day_format = Y-n-j $time_format = H:i:s $date_format = $day_format . . $time_format; $offset = 8; //这里默认是东八区,也就是北京时间 $lang = array( before = 前 , day = 天 , yday = 昨天 , byday = 前天 , hour = 小时 , half = 半 , min = 分钟 , sec = 秒 , now = 刚刚 , $timeoffset = $timeoffset == 9999 ? $offset : $timeoffset; $timestamp += $timeoffset * 3600; switch ( $format ) { case dt : $format = $date_format; break; case d : $format = $day_format; break; case t : $format = $time_format; break; if ( $format == u ) { $todaytimestamp = $now - ($now + $timeoffset * 3600) % 86400 + $timeoffset * 3600; $s = gmdate( empty( $custom_format ) ? $date_format : $custom_format, $timestamp ); $time = $now + $timeoffset * 3600 - $timestamp; if ( $timestamp = $todaytimestamp ) { if ( $time 3600 ) { $return = span title= . $s . . intval( $time / 3600 ) . $lang[ hour ] . $lang[ before ] . /span } elseif ( $time 1800 ) { $return = span title= . $s . . $lang[ half ] . $lang[ hour ] . $lang[ before ] . /span } elseif ( $time 60 ) { $return = span title= . $s . . intval( $time / 60 ) . $lang[ min ] . $lang[ before ] . /span } elseif ( $time 0 ) { $return = span title= . $s . . $time . $lang[ sec ] . $lang[ before ] . /span } elseif ( $time == 0 ) { $return = span title= . $s . . $lang[ now ] . /span } else { $return = $s; } elseif ( ($days = intval( ($todaytimestamp - $timestamp) / 86400 )) = 0 $days 7 ) { if ( $days == 0 ) { $return = span title= . $s . . $lang[ yday ] . gmdate( $time_format, $timestamp ) . /span } elseif ( $days == 1 ) { $return = span title= . $s . . $lang[ byday ] . gmdate( $time_format, $timestamp ) . /span } else { $return = span title= . $s . . ($days + 1) . $lang[ day ] . $lang[ before ] . /span } else { $return = $s; } else { $return = gmdate( $format, $timestamp ); return $return; }
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP !
相关推荐:
关于php中使用exec,system等函数调用系统命令的方法
php将时间差转换为字符串的实现
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答