2012-03-28 41 views
2

因此,我正在通过Twitter小部件专业版实施Twitter到WordPress主题。我想要与wordpress和小部件格式的日期不同。我想遵循5h,23h或3月3日的twitters日期格式。我所能找到的所有方法都是如何执行“created _ ago”“about _ old”等等......我只想使用xh如果在24小时内,则使用日期和月份缩写。我真的不知道PHP或太多的JS,所以任何帮助是非常非常感激。来自Twitter的新日期格式

+0

你想显示'02小时,1个days'前键入持续时间? – 2012-03-28 13:13:29

回答

0

使用PHP DateTimeDateInterval类,

$dt1 = new DateTime("2012-02-10 10:32:22"); 
$dt2 = new DateTime(); 
$diff = $dt2->diff($dt1); 
echo $diff->format("%Y years, %m months, %d days, %H hours, %I minuts, %s seconds ago"); 
/// 00 years, 1 months, 18 days, 08 hours, 26 minuts, 51 seconds ago 

如果你不想呼应00 years00 months等再检查DateTime::yDateTime::m等方面的性能为0,如果零不要附和他们。例如,

$format = ""; 
if ($diff->y > 0){ 
    $format.="%Y years,"; 
} 
if ($diff->m > 0){ 
    $format.="%m months,"; 
} 
... 
// more conditions for hours, minutes, seconds 

// echo the format 
echo $diff->format($format); 

兴趣的链接,

  1. DateTime::__construct()
  2. DateTime::diff()
  3. DateInterval::format()
+0

我想我更想知道更多,所以我可以如何让它从显示会议记录切换到时间,然后切换到日期。 – user1298207 2012-03-28 13:04:53

+0

@ user1298207,请参阅我已更新答案。它是一个逻辑问题。 – 2012-03-28 13:10:21

+0

谢谢,我有DateInterval,但没有看到其他两个 – user1298207 2012-03-28 13:15:46