这就是我所尝试的:
$time = date('Y/m/d');
$alerts = $repository->findBy(['datum' => $time]);
和
$time = date('Y/m/d');
$lessons = $repository->createQueryBuilder('q')
->where('q.datum LIKE currentDate')
->setParameter('currentDate', $time);
出于某种原因,它们不起作用,我不知道为什么。它应该显示dd($lessons)中的最后一个,但它没有
更新:
这是我得到的rn,但它仍然不工作:
$today = new \DateTime('today');
$tomorrow = new \DateTime('today +1 day');
$lessons = $repository->createQueryBuilder('q')
->where('q.datum > :today')
->andWhere('q.datum < :tomorrow')
->setParameter('today', $today)
->setParameter('tomorrow', $tomorrow);
3条答案
按热度按时间xmjla07d1#
为什么不使用当前数据库日期函数来执行此查询?它看起来像这样:
qij5mzcb2#
您使用数据库“Y-m-d”中保存的日期字段格式检查日期格式“Y/m/d”(2023 - 05 - 11)(2023-05- 11)
除此之外,你检查是否可以找到当前日期,但根据你的数据库表没有当前日期。
你做的另一个检查是检查是否有比2023-05-11 00:00:00更高的日期,你应该把它改为更高和相同的'>='
o3imoua43#
我猜你的实体日期字段是一个日期时间字段(或至少是一个日期字段),如果不是,请确保它是,然后你需要使用DateTime对象进行搜索
您的实体字段应如下所示
repo函数可以是这样的
在你的控制器里使用那个函数
GL HF