Рассмотрим следующий пример кода:
$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
на странице .