2
有人能指出此查詢中缺少的是什麼嗎?本月的最後一天不會出現。Doctrine2 - 如何在該查詢中包含月份的最後一天
已經嘗試使用( - >在哪裏( 'b.created> =:開始'), - > andWhere( 'b.created < =:' 端),而不是之間,而是沒有工作
public function getPostsByMonth($year, $month)
{
$date = new \DateTime("{$year}-{$month}-01");
$qb = $this->createQueryBuilder('b');
$query = $qb
->where('b.created BETWEEN :start AND :end')
->setParameter('start', $date->format('Y-m-d'))
->setParameter('end', $date->modify('last day of this month')->format('Y-m-d'))
;
return $query->getQuery()->getResult();
}
變化
$date = new \DateTime("{$year}-{$month}-01");
$toDate = clone $date;
$toDate->modify("last day of this month");
$qb = $this->createQueryBuilder('b')
->where('b.created BETWEEN :start AND :end')
->setParameter('start', $date)
->setParameter('end', $toDate);
所做的更改,而該月的最後一天,仍然沒有出現。 –
嘗試'$ toDate->修改(「下個月午夜的第一天」);' –
賓果!這就是訣竅,謝謝阿爾貝託的迴應和改進建議。你能編輯你的答案嗎? –