У меня проблема с вопросом о формате даты. Я использую mysql, doctrine2 и php 5.3.
Проблема заключается в том, что я запрашиваю базу данных getRepository('Entity\\Srm').findBy($id)
Я получаю отрицательное значение даты: -0001-11-30 00:00:00
.
Значение, которое в настоящее время хранится в базе данных, составляет 0000-00-00
. Тип данных в mysql – date
.
Объект doctrine имеет переменную, определенную как тип date
.
Я проделал множество поисков и никаких хороших результатов.
Есть идеи?
благодаря
Если вы можете изменить базу данных, добавьте нулевой атрибут в свой столбец и замените значения 0000-00-00 нулевым.
Кроме того, вам необходимо реализовать собственный тип: http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/advanced-field-value-conversion-using-custom-mapping-types. HTML
Я нашел решение своей проблемы. У меня были аннотации, установленные на дату атрибутов в объектах, поэтому я решил удалить аннотации, чтобы PHP обрабатывал их. Теперь он работает, поскольку он запрашивается как тип строки, а не тип даты. Я думаю, это то, что я получаю от статического мира против динамичного мира.