我正在使用 doctrine orm,我想将数据库中日期时间列中的日期(仅)与 php 中用户输入的日期(仅)datetime-local 进行比较

I'm using doctrine orm and I want to compare the date(only) from a datetime column in the database to user inputted date (only)datetime-local in php

提问人:Zuby 提问时间:3/18/2023 最后编辑:Zuby 更新时间:3/18/2023 访问量:154

问:

我有一个实体,其截止日期列保存日期时间。我想确认日期(单独)之前没有保存过。但是我无法仅比较日期时间对象中的日期。数据库存储库中的日期时间和用户的 datetime-local 输入

我试过了

$entityManager->getRepository (entity::class)->count('due_date', $userInputedDate);

但除非时间部分也完全相同,否则这不会返回 true。我希望能够只比较日期而没有时间。

我还阅读了有关 mysql DATE() 函数的信息,但我不知道如何将其与 doctrine orm(实体)管理器一起应用。

还考虑过拉取due_date列,循环它,仅将日期格式化为字符串,然后比较userInputed date(only)部分。但是,对于应该在提交表格之前进行的检查来说,这似乎是低效的。

php datetime 比较 学说-dbal

评论


答:

0赞 IanMcL 3/18/2023 #1

为此,您可以使用 DQL(而不是 getRepository())和 Doctrine Extensions 软件包来提供 DATE 函数

评论

0赞 Zuby 3/18/2023
哦,好的,非常感谢。一直在研究它。我需要弄清楚如何在我的容器中绑定扩展。