[英]PHP - Count how many days ago
在我的數據庫中,我有一堆用戶的上次登錄日期。 他們是這樣寫的: Last Login: Apr 08 2015, 22:53:49 CEST
Last Login: Apr 08 2015, 22:53:49 CET
Last Login: Apr 08 2015, 22:53:49 CEST
和: Last Login: Apr 08 2015, 22:53:49 CET
因此,最后的CEST
和CET
都可能發生。
但是,我想做的是查看多少天前的數據(四舍五入)。 我有什么辦法可以使用這種格式嗎? 它必須是這種格式。 我想在我的網站上回顯以下內容:
Last Login: Apr 08 2015, 22:53:49 CEST (46 days ago)
我找不到這種格式的任何示例。 它們大多數以毫秒為單位。 這有可能嗎?
我只需要幾天。 小時和分鍾並不重要。
基本上就是這樣: $date=date('d M Y');
第1步 :
刪除日期的最后一部分,即CET
或CE
$Date = substr($Date, 0, strpos($Date, " "));
最后一個空格后的字符
第2步
找到當前日期和提取日期之間的差
$interval = $datetime1->diff($datetime2);
這是整個代碼:
<?php
$Date = "Apr 08 2015, 22:53:49 CES";
$Date = substr($Date, 0, strpos($Date, " CE"));
$now = date('Y-m-d');
$datetime1 = new DateTime($Date);
$datetime2 = new DateTime($now);
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
?>
如果您要打印其他消息,如果相差0天,則只需檢查是否存在0
天差並進行處理
if ($interval->format('%R%a')=="-0")
{
echo 'Last Login Today';
}
else
{
echo $interval->format('%R%a');
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.