0

我正在使用这段代码:

//get days
$a = date_create($arrive);
$d = date_create($leave);
//$days = date_diff($d,$a);

echo '<input type="hidden" id="days" value="'.date_diff($d,$a).'"/>';

并收到此错误:可捕获的致命错误:DateInterval 类的对象无法转换为字符串

我不知道如何解决这个问题。

4

1 回答 1

7

date_diff()返回一个DateInterval对象,您需要调用该对象format()以从中获取实际值。在这种情况下,您将使用%d来获取天数。

//get days
$a = date_create($arrive);
$d = date_create($leave);
$diff = date_diff($d,$a);

echo '<input type="hidden" id="days" value="'.$diff->format("%d").'"/>';

请记住,这只会上升到 31。从那里你将需要使用%mwith%d来显示月份。

看到它在行动

于 2013-10-30T20:11:08.113 回答