如何在PHP中使用date_diff显示Days Month或Year

时间:2018-04-26 05:55:14

标签: php diff

如果值 <30天,我希望系统显示天数

但是当值&gt; 30天时,它应显示 1个月,当月数&gt; 12个月时,

然后系统应显示 1年

例如当输出为1天5个月0年时

所以我希望系统只显示5 months我不想显示

这是使用diff

的基本代码
$date1=date_create("2013-03-15");
$date2=date_create("now");
$diff=date_diff($date1,$date2);
echo $diff->format("%d days %m months %y years");

输出为11 days 1 months 5 years

由于显示,我希望系统隐藏,并且只显示

所以,输出必须像This 5 years

任何人都可以告诉我该怎么做

1 个答案:

答案 0 :(得分:1)

您可以应用简单的if-else条件来检查年,月,日是否大于0,并根据该节目显示其中任何一个。

如下所示: -

if($diff->y > 0){
  echo $diff->format("%y years");
}else if($diff->m > 0){
  echo $diff->format("%m months");
}else if($diff->d > 0){
  echo $diff->format("%d days");
}else { 
  echo "Today"; 
}

输出: - https://eval.in/994989