Надеюсь, что название не слишком загадочно. У меня есть массив с объектом DATETIME в нем, и я просто пытаюсь понять, как откликнуться на эту страницу.
["created"]=> object(DateTime)#3 (3) { ["date"]=> string(19) "2010-10-22 00:00:00" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/London"
Кто-нибудь может мне помочь?
дата (), но получите:
Warning: date() expects parameter 2 to be long, object given in C:\
любая помощь, которую больше всего ценит,
Джоунси
http://www.php.net/manual/en/datetime.format.php
echo date_format(myArray["created"], "the format you want for your date");
Форматирование:
Используйте DateTime::format()
. Синтаксис маски идентичен date()
.
echo $value->format('Ymd H:i:s');
Если это фактический объект DateTime php5, вы можете использовать метод format
для эха
$myDate = $myArray['created']; echo $myDate->format('Ymd H:i:s');
Я добавляю этот ответ, даже если я не уверен, что он отвечает конкретно на вопрос (и лучший ответ уже есть), но я не мог найти много других мест, где упоминается вышеупомянутый формат ( date
/ время timezone_type
/ timezone
).
Если у вас есть дата, переведенная с объекта на массив
var_export
DateTime::__set_state(array( 'date' => '2017-12-05 11:58:25.428595', 'timezone_type' => 3, 'timezone' => 'US/Pacific', ))
json_encode
{"date":"2017-12-05 11:57:07.938671","timezone_type":3,"timezone":"US\/Pacific"}
вы можете снова использовать метод DateTime::__set_state
magic, упомянутый выше, чтобы снова преобразовать его в объект DateTime .
Не уверен, как здесь __set_state
может быть двунаправленным, но он делает магию . Я не мог найти документацию.
Но вы можете проверить его здесь: http://sandbox.onlinephpfunctions.com/code/0a18e6937e7d4373beb91713f2e6e5f75f9af3e2