3

日付形式の問題が発生しています。私はmysql、doctrine2、およびphp5.3を使用しています。

問題は、データベースにクエリを実行するgetRepository('Entity\\Srm').findBy($id)と、次の負の日付値になってしまうことです-0001-11-30 00:00:00

現在データベースに保存されている値はです0000-00-00。mysqlのフィールドのデータ型はですdate

教義エンティティには、dateタイプとして識別される変数があります。

私はたくさんの検索をしましたが、良いリードはありませんでした。

何か案は?

ありがとう

4

2 に答える 2

3

データベースを変更できる場合は、列にnull許容属性を追加し、0000-00-00の値をnullに置き換えます。

それ以外の場合は、カスタムタイプを実装する必要があります:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/advanced-field-value-conversion-using-custom-mapping-types。 html

于 2012-06-05T20:04:49.717 に答える
2

私は自分の問題の解決策を見つけました。エンティティの属性にアノテーションを設定していたので、PHPで処理するためにアノテーションを削除することにしました。日付型ではなく文字列型として照会されるため、現在は機能しています。これが私が静的な世界と動的な世界から得ているものだと思います。

于 2012-06-06T15:42:32.043 に答える