设置"时间"或带有Doctrine的DateInterval

时间:2016-10-21 07:55:45

标签: php mysql symfony doctrine-orm doctrine

我从一个带有" time"的MySQL DB继承而来。表示"一周中的时间的列#34;在" 00:00:00"范围内到" 167:59:59" (24 * 7 = 168)。

相应的ORM声明是:

 * @var \DateTime $startTime
 * @ORM\Column(name="startTime", type="interval")

显然,Doctrine总是在PHP中使用DateTime(而不是DateInterval),可能与其他数据库引擎保持兼容。

问题:我无法理解如何设置这些值,因为它们在持久化时总是变为NULL。

例如:

$pWeek->setEndTime(new \DateTime('T'06:00:00'));

将在Entity中设置DateTime,但在数据库中设置为NULL。

我认为设计这个的人已经直接在数据库中设置了数据,但由于有ORM,我需要能够用它设置数据。

1 个答案:

答案 0 :(得分:1)

这很奇怪,但最后代码是...... 正在工作

不知道我是怎么看到它失败的,我想这可能只是一个缓存的事情。

由于