print_r () добавляет свойства к объектам DateTime [дубликат]

На этот вопрос уже есть ответ здесь:

Почему можноЯ имею доступ к DateTime->дата в PHPКласс DateTime? Это ошибка? 4 ответа

Рассмотрим следующий пример кода:

$m_oDate = new DateTime('2013-06-12 15:54:25');
print_r($m_oDate);
echo $m_oDate->date;

Начиная с PHP 5.3, это производит (что-то вроде) следующий вывод:

DateTime Object
(
    [date] => 2013-06-12 15:54:25
    [timezone_type] => 3
    [timezone] => Europe/Amsterdam
)
2013-06-12 15:54:25

Однако следующий код:

$m_oDate = new DateTime('2013-06-12 15:54:25');
echo $m_oDate->date;

... просто выдает ошибку:

Notice: Undefined property: DateTime::$date in ...

Почемуprint_r() "добавлять" эти свойства к объекту? Обратите внимание, что они не определены как частьDateTime класс настраница справочника.

Ответы на вопрос(7)

Ваш ответ на вопрос