2016-07-28 138 views
1

我有這段代碼顯示何時發佈'主題',但它顯示在幾天內,例如,如果它是今天發佈,那麼它將顯示0天前。我可以讓它顯示它現在是否顯示,例如1分鐘前顯示,並在60分鐘後增加到24小時後,以及在如今現在如何自動更改日期之後增加。 我的代碼:時間戳x小時前和24小時後的日期

<h4><span class="label label-default"> 
    <?php 
    $start = date_create($row['timestamp']); 
    $end = date_create(); 
    $diff=date_diff($end,$start); 
    print_r($diff->days); 
    ?> 
day(s) ago</span></h4> 
+0

我認爲你正在尋找碳? http://carbon.nesbot.com。來自他們網站的例子:'echo Carbon :: now() - > subMinutes(2) - > diffForHumans(); //'2分鐘前' – charmeleon

回答

1

您可以使用此功能:

function diffString($diff) { 
    $units = ["year", "month", "day", "hour", "minute", "second"]; 
    $props = "ymdhis"; 
    foreach ($units as $i => $unit) { 
     $prop = $props[$i]; 
     $num = $diff->$prop; 
     if ($num) return "$num {$unit}" . ($num - 1 ? "s" : ""); 
    } 
    return "0 seconds"; 
} 

調用示例:

$start = date_create('2016-07-28 16:23'); 
$end = date_create(); 
$diff=date_diff($end,$start); 
echo diffString($diff) . " ago"; 

它將區分單數和複數。

+0

謝謝你!成功了! –

+0

你能幫我解決這個問題嗎? :) http://stackoverflow.com/questions/38655764/pagination-limit-per-page-pdo –

相關問題