我正在尝试添加“添加1小时,24分钟前”或“1个月前添加”等内容到我的网站。
我在这里尝试了解决方案,但它不起作用:http://www.phpbuilder.com/board/showthread.php?t=10362190
我的时间戳采用这种格式; YYYY-MM-DD HH-MM-SS。 (使用NOW();
)
很抱歉,如果我的描述性不够 - 我尝试在谷歌搜索,说实话,没有任何可靠的解决方案。
谢谢!
答案 0 :(得分:2)
您不知道如何使用Google ... http://tutorialzine.com/2009/09/making-our-own-twitter-timeline/
而您所拥有的不是UNIX时间戳,您需要使用strtotime()
function relativeTime($dt,$precision=2)
{
$times=array( 365*24*60*60 => "year",
30*24*60*60 => "month",
7*24*60*60 => "week",
24*60*60 => "day",
60*60 => "hour",
60 => "minute",
1 => "second");
$passed=time()-$dt;
if($passed<5)
{
$output='less than 5 seconds ago';
}
else
{
$output=array();
$exit=0;
foreach($times as $period=>$name)
{
if($exit>=$precision || ($exit>0 && $period<60)) break;
$result = floor($passed/$period);
if($result>0)
{
$output[]=$result.' '.$name.($result==1?'':'s');
$passed-=$result*$period;
$exit++;
}
else if($exit>0) $exit++;
}
$output=implode(' and ',$output).' ago';
}
return $output;
}