2015-02-11 38 views
0

我正在開發一個新聞應用程序,用戶在這裏引入新聞並將創建日期存儲起來,並且新聞以「新!」出現。它旁邊的圖標。當消息變老時(我們假設1周),我想自動清除「新」圖標。基於日期的codeigniter更新寄存器

如何自動實現此功能? 我想基於「比用戶引入新聞時晚1周」來更新表格的一個字段(例如新的)。

我是否需要爲每個創建的新寄存器設置一個「計時器」?我是否需要某種cron工作來檢查新聞是否過時?

你會怎麼做?

謝謝!

+0

爲什麼你需要新的身份?您可以顯示它與時差。請參閱@AdrienXL解決方案 – 2015-02-11 12:19:18

回答

0

不知道你的應用程序是如何工作的,你沒有提供任何代碼,但您可以在您的視圖伊斯利做到這一點:

if(time() - strtotime($postDate) <= 60*60*24*7) //$postDate is the date stored in your table 
{ 
    echo "<div>new!</div>" 
} 

,如果你想這樣做有一個數據庫字段,看看如何crons工作:

https://en.wikipedia.org/wiki/Cron

0

你可以嘗試像以下:

$news_time = strtotime($row['creation_date']); // your database record creation date 
$a_week_ago = strtotime('-1 week'); 

if($news_time > a_week_ago) { 
// Your 'new' HTML here 
}