为什么DateTime-> diff()显示其他结果?

时间:2016-04-03 01:27:41

标签: php date

$DateStartTime = new DateTime("now");
$Day1 = '20';
$Day2 = '25';
$DateStart = new DateTime($DateStartTime->format('Y').'-'.$DateStartTime->format('m').'-'.$Day1);
$DateEnd = new DateTime($DateStartTime->format('Y').'-'.$DateStartTime->format('m').'-'.$Day2);
$Line = $DateStart->diff($DateEnd);
echo $Line->format("j");

此代码应打印日期之间的计数天数,但结果中我会看到符号j

请告诉我,为什么结果我们会看到符号j而不计算期间的天数?

P.S。:j - 计算没有第一个0的天数;

1 个答案:

答案 0 :(得分:1)

DateTime::diff返回DateInterval个实例。您可以阅读here允许的格式字符。没有j。你想要的是

echo $Line->format("%a"); // 5