当前位置:网站首页>php 将时间戳转化为 刚刚、几分钟前、几小时前、几天前 格式
php 将时间戳转化为 刚刚、几分钟前、几小时前、几天前 格式
2022-08-08 23:01:00 【还相信光吗?】
下面是php实现的几种方式 可以自己选用
//把时间戳转换为几分钟或几小时前或几天前
function wordTime($time) {
$time = (int) substr($time, 0, 10);
$int = time() - $time;
$str = '';
if ($int <= 30){
$str = sprintf('刚刚', $int);
}elseif ($int < 60){
$str = sprintf('%d秒前', $int);
}elseif ($int < 3600){
$str = sprintf('%d分钟前', floor($int / 60));
}elseif ($int < 86400){
$str = sprintf('%d小时前', floor($int / 3600));
}elseif ($int < 2592000){
$str = sprintf('%d天前', floor($int / 86400));
}else{
$str = date('Y-m-d H:i:s', $time);
}
return $str;
}
function mdate($time = NULL) {
$text = '';
$time = $time === NULL || $time > time() ? time() : intval($time);
$t = time() - $time; //时间差 (秒)
$y = date('Y', $time)-date('Y', time());//是否跨年
switch($t){
case $t == 0:
$text = '刚刚';
break;
case $t < 60:
$text = $t . '秒前'; // 一分钟内
break;
case $t < 60 * 60:
$text = floor($t / 60) . '分钟前'; //一小时内
break;
case $t < 60 * 60 * 24:
$text = floor($t / (60 * 60)) . '小时前'; // 一天内
break;
case $t < 60 * 60 * 24 * 3:
$text = floor($time/(60*60*24)) ==1 ?'昨天 ' . date('H:i', $time) : '前天 ' . date('H:i', $time) ; //昨天和前天
break;
case $t < 60 * 60 * 24 * 30:
$text = date('m月d日 H:i', $time); //一个月内
break;
case $t < 60 * 60 * 24 * 365&&$y==0:
$text = date('m月d日', $time); //一年内
break;
default:
$text = date('Y年m月d日', $time); //一年以前
break;
}
return $text;
}
希望对于大家有所帮助!!!!
边栏推荐
猜你喜欢
随机推荐
即时聊天系统中群组和好友关系Mysql数据表设计
MySQL8.0 及 SQL 注入
Mysql8.0.21 Community Server远程连接报错
internship:一般的原有项目功能优化的具体步骤
Kubernetes 资源核心原理
Application Layer Protocol - RADIUS
Ant Forest Offline crawlers automatically collect energy, raise chickens, and other operations
wps表格分两页断开怎么办?wps表格分两页断开的解决方法
ArcPy set the unique identification code
wps a列不见了怎么办?wps a列不见了的解决方法
动态主机配置协议DHCP(DHCPv4)
数组去重的几种方法
PHP7.2开发物流自动拣货机流程
如何实现call、apply、bind
JSDay1-合并两个有序数组
wps备份与恢复在哪里?
按键精灵 for ts API 使用
Go语言并发编程基础上下文概念是什么
CTFSHOW_WEB入门web213
Button Wizard Delete File Command