使用Doctrine选择从月初到当前日期的记录

Sco*_*ion 2 doctrine symfony doctrine-orm

我从教义中获取数据有两个问题:

  1. 选择从月初到当前日期的记录
  2. 选择从年份开始到当前日期的记录

我怎么能写一个Doctrine查询来做与Mysql中相同的事情

这是我的存储库中的不完整代码?

public function findByYearlyAttendanceTillToday($id)
{
    $em = $this->getEntityManager();
    $query = $em->createQuery("SELECT count(a) FROM CollegeStudentBundle:StudentAttendance a where a.present LIKE 'A' and a.student_id = :id and a.date > :date");
    $query->setParameter('id', $id);
    $query->setParameter('date', **?????**);
    return $query->getResult();
}
Run Code Online (Sandbox Code Playgroud)

Eln*_*mov 8

这是你需要的:

new \DateTime('midnight first day of this month');
new \DateTime('first day of january');
Run Code Online (Sandbox Code Playgroud)

我也会改变这个:

a.date > :date
Run Code Online (Sandbox Code Playgroud)

对此:

a.date >= :date
Run Code Online (Sandbox Code Playgroud)