0

我需要将 pubDate 格式化为示例:

2 小时前、2 天前或 20 小时前......

在保持提要的原始日期的同时,因为我之前尝试过格式化,并且我的所有提要都与我在日期格式和日期生成器中设置的 pubDate 相同。我该如何解决这个问题?

同样,当我运行管道时,我尝试格式化我的 pubdate 和(阅读全文)的文本,但在管道输出中,当我从我的网站调用 rss 文件时,我总是将格式作为代码。

您的帮助将不胜感激...

4

1 回答 1

0
function ShowDate($date) // $date -->  time(); value
{
$stf = 0;
$cur_time = time();
$diff = $cur_time - $date;
$phrase = array('second','minute','hour','day','week','month','year','decade');
$length = array(1,60,3600,86400,604800,2630880,31570560,315705600);

for($i =sizeof($length)-1; ($i >=0)&amp;&amp;(($no =  $diff/$length[$i])< =1); $i--); if($i < 0) $i=0; $_time = $cur_time  -($diff%$length[$i]);
$no = floor($no); if($no <> 1) $phrase[$i] .='s'; $value=sprintf("%d %s ",$no,$phrase[$i]);

if(($stf == 1)&amp;&amp;($i >= 1)&amp;&amp;(($cur_tm-$_time) > 0)) $value .= time_ago($_time);

return $value.' ago ';
}

您需要在其中传递日期,您可以获得所需的格式。

这是 php 函数,它将时间转换为 2 小时前,依此类推......

有关更多功能,您可以查看此链接日期时间格式

于 2012-02-09T08:36:37.557 回答