微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php自定义的格式化时间示例代码

如:时间刚好是5分钟前,则对应的时间戳就会被格式化为5分钟前,不多说了,直接贴上代码
<div class="codetitle"><a style="CURSOR: pointer" data="2476" class="copybut" id="copybut2476" onclick="doCopy('code2476')"> 代码如下:

<div class="codebody" id="code2476">
/*
格式化时间
@param integer $timestamp 时间戳
@param string $format dt=日期时间 d=日期 t=时间 u=个性化 其他=自定义
@param integer $timeoffset 时区值
@param string $custom_format 自定义时间格式
@return string
/
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'] . '';
} elseif ( $time > 1800 ) {
$return = '<span title="' . $s . '">' . $lang['half'] . $lang['hour'] . $lang['before'] . '';
} elseif ( $time > 60 ) {
$return = '<span title="' . $s . '">' . intval( $time / 60 ) . $lang['min'] . $lang['before'] . '';
} elseif ( $time > 0 ) {
$return = '<span title="' . $s . '">' . $time . $lang['sec'] . $lang['before'] . '';
} elseif ( $time == 0 ) {
$return = '<span title="' . $s . '">' . $lang['Now'] . '';
} 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 ) . '';
} elseif ( $days == 1 ) {
$return = '<span title="' . $s . '">' . $lang['byday'] . gmdate( $time_format,$timestamp ) . '';
} else {
$return = '<span title="' . $s . '">' . ($days + 1) . $lang['day'] . $lang['before'] . '';
}
} else {
$return = $s;
}
} else {
$return = gmdate( $format,$timestamp );
}
return $return;
}

原文地址:https://www.jb51.cc/php/25382.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐