PHP - 将时间戳转换为以前奇怪的结果

用户198989

我有一个工作功能可以将时间戳转换为以前。(例如:2分钟前)然而,今天的结果突然改变了。当我尝试转换这个时间戳时,1502442048我在-978327747几秒钟前得到了这个结果

我想到的第一件事是服务器管理员可以更改服务器的时区。所以我尝试将其添加到顶部以设置时区

date_default_timezone_set('Asia/Bangkok');

然而,一切都没有改变。该功能之前运行良好。使功能不正确的原因可能是什么?

这是我的前功能

function ago($time_ago) {
$time_ago =  strtotime($time_ago) ? strtotime($time_ago) : $time_ago;
$time  = time() - $time_ago;
switch($time):
case $time <= 60;
return ($time == 1) ? '1 second ago' : $time.' seconds ago';
case $time >= 60 && $time < 3600;
return (round($time/60) == 1) ? '1 minute ago' : round($time/60).' minutes ago';
case $time >= 3600 && $time < 86400;
return (round($time/3600) == 1) ? '1 hour ago' : round($time/3600).' hours ago';
case $time >= 86400 && $time < 604800;
return (round($time/86400) == 1) ? '1 day ago' : round($time/86400).' days ago';
case $time >= 604800 && $time < 2600640;
return (round($time/604800) == 1) ? '1 week ago' : round($time/604800).' weeks ago';
case $time >= 2600640 && $time < 31207680;
return (round($time/2600640) == 1) ? '1 month ago' : round($time/2600640).' months ago';
case $time >= 31207680;
return (round($time/31207680) == 1) ? '1 year ago' : round($time/31207680).' years ago' ;
endswitch;
}
迈克尔·多耶

我会改变你的三元使用is_numeric()

$time_ago =  is_numeric($time_ago) ? $time_ago : strtotime($time_ago); 

要检查给定的时间是否是 unix 时间戳,如果不是,则将其转换为 1。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将时间戳转换为以前的时间在php中?

来自分类Dev

将日期时间字段时间戳从mysql转换为php

来自分类Dev

将iOS格式的时间转换为php时间戳

来自分类Dev

时间戳计算PHP产生的奇怪结果

来自分类Dev

如果少于1个月,则在PHP中将时间戳转换为以前的时间

来自分类Dev

PHP-将mysql时间戳转换为显示网格

来自分类Dev

使用PHP将时间戳转换为小时

来自分类Dev

PHP:将负时间戳转换为日期

来自分类Dev

使用PHP将时间戳转换为小时

来自分类Dev

PHP-将午夜日期转换为时间戳

来自分类Dev

将实际日期转换为Unix时间戳PHP

来自分类Dev

将时间戳字符串转换为时间戳整数php

来自分类Dev

将字符串时间戳转换为PHP中的时间戳

来自分类Dev

将时间戳字符串转换为时间戳整数php

来自分类Dev

PHP日期转换为时间戳

来自分类Dev

PHP时间戳转换为JavaScript?

来自分类Dev

将英国式日期和时间转换为UNIX时间戳(PHP> 5.3)

来自分类Dev

将日期时间转换为 PHP 中用于日历的通用时间戳

来自分类Dev

将Unix时间戳转换为PHP Date(),年份不起作用

来自分类Dev

使用Magento将SQL时间戳转换为使用PHP格式

来自分类Dev

将Unix时间戳转换为PHP Date(),年份不起作用

来自分类Dev

如何将接收到的datetime对象转换为php中的时间戳?

来自分类Dev

将毫秒时间戳转换为以前的时间戳

来自分类Dev

将此字符串转换为时间戳PHP

来自分类Dev

将此字符串转换为时间戳PHP

来自分类Dev

PHP将mktime结果转换为UTC

来自分类Dev

将PHP查询结果转换为JSON

来自分类Dev

将PHP查询结果转换为JSON

来自分类Dev

将网页结果转换为 PHP