我正在使用这段代码:
//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 类的对象无法转换为字符串
我不知道如何解决这个问题。
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。从那里你将需要使用%m
with%d
来显示月份。