DateTime可捕获的致命错误

时间:2016-06-08 11:27:07

标签: php

我有一个问题,我是初学者 我有一个生日日期(格式为Y-m-d) 而且我确实有约会。

$date = $_POST["DatumJJJJ"]."-".$_POST["DatumMM"]."-".$_POST["DatumTT"];
$birthday = new DateTime($date);
$now = new DateTime(date("Y-m-d"));
$difference = $birthday->diff($now);
echo $difference;

现在,最后一行出现错误:

Catchable fatal error: Object of class DateInterval could not be converted to string

我该怎么办?我看到了其他类似的问题,但他们没有帮助我!

1 个答案:

答案 0 :(得分:0)

这是因为$difference不是字符串。您不能像打印字符串那样直接打印它。如果您想查看$difference包含的数据。使用print_r()。像这样,

print_r($difference);

上述功能的输出将是这样的,

DateInterval Object
(
    [y] => 0
    [m] => 7
    [d] => 29
    [h] => 0
    [i] => 0
    [s] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] => 242
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)

有关对象中每个键的详细信息,请参阅http://php.net/manual/en/class.dateinterval.php