PHP DateTime转换错误

Bur*_*ppo 0 php datetime date-math

我正在使用此代码:

//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).'"/>';
Run Code Online (Sandbox Code Playgroud)

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

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

Joh*_*nde 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").'"/>';
Run Code Online (Sandbox Code Playgroud)

只要记住这只会上升到31.从那里,你将需要使用%m%d还显示个月.

看到它在行动

  • 你可以使用`$ diff-> days`(或`$ diff-> d`):- D (4认同)