我有premiere_poland
列在數據庫表中是date
類型。主義2.1 - 日期時間問題
/** @Column(type="date", nullable=TRUE) */
protected $premiere_poland;
我的問題是,我想存儲日期像2012-01-01
,2013-00-00
,2013-01-00
等等,我想這種類型的日期,但教義每次返回列數據中DateTime實例和真實的形式改變(例如,2013-01-00
= 31.12.2012
)。
我該如何讓Doctrine以字符串形式返回此值,而不是DateTime類實例。
我的查詢:
$q = "SELECT
g,
p.name AS platform_name, p.name_short AS platform_name_short, p.id AS platform_id,
s.premiere_poland, s.premiere_world
FROM Game g
JOIN g.genres ge
JOIN g.platform p
LEFT JOIN g.specification s
WHERE g.id = :id";
$results = $db->createQuery($q)->setParameter('id', $_GET['id'])->getResult();
'2013-01-00'是不是有效日期,因此PHP的'DateTime'對象和MySQL的'DATE'類型應該「鑄」成合法的。無論如何,你爲什麼要存儲這樣一個奇怪的東西? – Crozin 2012-02-07 16:05:49
你可以顯示一個快速的'var_dump($ object-> premier_poland)'?根據http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/basic-mapping.html – 2012-02-07 16:08:22
@Crozin因爲我需要存儲遊戲日期列在你的安裝一切看起來都正確首映式和首映式可能不完全知道(例如2013年3月或僅一年)。 @Mike是的,但如果我有'2013-01-00'在數據庫中的var_dump將返回我'串(10)「2012年12月31日」'。這是錯的; p。 – 2012-02-07 16:20:37