php自定义的格式化时间示例代码
2023-06-13 09:15:13 时间
如:时间刚好是5分钟前,则对应的时间戳就会被格式化为5分钟前,不多说了,直接贴上代码:
复制代码代码如下:
/**
*格式化时间
*@paraminteger$timestamp时间戳
*@paramstring$formatdt=日期时间d=日期t=时间u=个性化其他=自定义
*@paraminteger$timeoffset时区值
*@paramstring$custom_format自定义时间格式
*@returnstring
*/
publicfunctiondgmdate($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="<spantitle="".$s."">".intval($time/3600).$lang["hour"].$lang["before"]."</span>";
}elseif($time>1800){
$return="<spantitle="".$s."">".$lang["half"].$lang["hour"].$lang["before"]."</span>";
}elseif($time>60){
$return="<spantitle="".$s."">".intval($time/60).$lang["min"].$lang["before"]."</span>";
}elseif($time>0){
$return="<spantitle="".$s."">".$time.$lang["sec"].$lang["before"]."</span>";
}elseif($time==0){
$return="<spantitle="".$s."">".$lang["now"]."</span>";
}else{
$return=$s;
}
}elseif(($days=intval(($todaytimestamp-$timestamp)/86400))>=0&&$days<7){
if($days==0){
$return="<spantitle="".$s."">".$lang["yday"].gmdate($time_format,$timestamp)."</span>";
}elseif($days==1){
$return="<spantitle="".$s."">".$lang["byday"].gmdate($time_format,$timestamp)."</span>";
}else{
$return="<spantitle="".$s."">".($days+1).$lang["day"].$lang["before"]."</span>";
}
}else{
$return=$s;
}
}else{
$return=gmdate($format,$timestamp);
}
return$return;
}
相关文章
- php getrealpath,PHP SplFileInfo getRealPath()用法及代码示例「建议收藏」
- php实现base64加密解密的代码
- [PHP代码]php代码书写规范和要求
- PHP逻辑运算符
- 驱动MySQL驱动加载:一种基于PHP的解决方案(php加载mysql)
- PHP连接MySQL的快速操作指南(php连接mysql步骤)
- 谈谈关于PHP的代码安全相关的一些致命知识
- 慢解决PHP连接MySQL慢的方法(php连接mysql时间)
- PHP连接MSSQL数据库的方法和步骤(php如何连接mssql)
- 利用js调用后台php进行数据处理原码
- PHP如何编写易读的代码
- 使用PHP获取网络文件的实现代码
- PHP一个页面执行时间类代码
- 让的PHP代码飞起来的40条小技巧(提升php效率)
- PHP统计目录下的文件总数及代码行数(去除注释及空行)
- PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
- php中用socket模拟http中post或者get提交数据的示例代码
- 显示程序执行时间php函数代码
- php创建以UNIX时间戳命名的文件夹(示例代码)
- php实现的DateDiff和DateAdd时间函数代码分享