Intereting Posts
spl_object_hash для PHP <5.2 (уникальный идентификатор для экземпляров объекта) PHP Взрыв из первого числа (целое число) Найдите массив и верните все ключи и значения, если найдено совпадение как изменить размер изображения с URL-адреса и уменьшить размер изображения Много иетераций хэши: каждый раз добавляйте соль? PHP – строка для многомерного массива Как рассылать электронные письма для отправки Лучший подход к декодированию сигнатуры шифрования Youtube с использованием PHP или JS Значения в UTF-8, закодированные как NULL в JSON массовое обновление списка значений из списка идентификаторов Доля входа между PHP и Classic VBScript PHP exec () не работает должным образом Массив сортировки PHP по двум значениям поля PHP – Как заставить ошибки Shell выходить на экран Возврат списка цепочек и последнего сообщения каждого сообщения с использованием базы данных php и mysql

Функции даты в PHP

Еще один простой вопрос. Я нашел этот действительно классный фрагмент кода:

$date_str = "Jan 14th 2011"; $date = date_parse_from_format('M jS Y', $date_str); echo $date->format('Ym-d'); 

Но когда я запускаю его на своем компьютере, он говорит «Неустранимая ошибка»: вызовите формат функции-члена () на не-объектной строке 3.

Код был взят отсюда Преобразование строки даты в дату, поэтому я полагаю, что это хорошо, но похоже, что она ссылается на объект, который не существует.

Я смотрел http://php.net/manual/en/function.date-parse-from-format.php и http://www.w3schools.com/php/php_ref_date.asp среди многих других, но у меня есть не найдено никаких подсказок.

Мой вопрос в том, должен ли этот код работать как отдельный фрагмент кода. Если да, то почему это не работает для меня? Иначе я должен сделать, чтобы он работал так, как ожидалось.

 date_parse_from_format(); 

возвращает ассоциативный массив, и вы пытаетесь получить доступ к методу класса для не-объекта.

если вы хотите использовать встроенный класс DateTime PHP. затем дополнительную информацию здесь http://in2.php.net/manual/en/datetime.format.php

date_parse_from_format возвращает массив, а не объект DateTime. Что вы хотите

 $date = date_create_from_format('M jS Y', $date_str); ^^^^^^---note the change echo date('Ym-d', $date);