我想显示从上次更新日期到今天的总天数,我想在我的视图文件中显示这些天数,请告诉我我在哪里记错了。 这是我的查看代码...
<li><?php echo $this->lang->line('member_since'); ?> : <span class="pull-right"><?php
$date1= date('Y-m-d',strtotime($customer['last_update']));
$date2= date('Y-m-d',strtotime($customer['last_update']));
$diff=date_diff($date1,$date2);
if(empty($diff))
{
echo "0 Day";
}
else
{
echo $diff->format("%R%a days");
}
?></span></li>
答案 0 :(得分:1)
$date1 = date('Y-m-d',strtotime($customer['last_update']));
$date2 = date('Y-m-d',strtotime($customer['last_update']));
您为$customer['last_update']
和$date1
分配了相同的变量$date2
。
答案 1 :(得分:1)
将您的$ date2更改为今天的时间
<li>
<?php echo $this->lang->line('member_since'); ?> : <span class="pull-right"><?php
$date1= date('Y-m-d',strtotime($customer['last_update']));
$today= date('Y-m-d');
$diff=date_diff($date1,$today);
if(empty($diff))
{
echo "0 Day";
}
else
{
echo $diff->format("%R%a days");
}
?></span></li>
答案 2 :(得分:1)
尝试一下
您忘记在代码中与今天的日期进行比较
$date1= date('Y-m-d',strtotime($customer['last_update']));
$today= date('Y-m-d');
$diff=date_diff($today,$date1);
echo $diff->format("%R%a days");die;
date_diff成功返回一个DateInterval对象,该对象表示两个日期之间的差。失败则为假
答案 3 :(得分:1)
您可以使用以下查询直接在MySQL中进行操作:
SELECT DATEDIFF( now(), '2019-08-05' ) as days;
您可以传递列名(last_updated)而不是'2018-08-05'。
因此,您可以在从数据库中获取数据时执行此操作,而不是在PHP中完成该操作。