Veamos como usar between en DQL con este método de ejemplo:
public function getPostsLastDays($days) { $em = $this->getEntityManager(); $fecha = date('Y-m-d'); $nuevafecha = strtotime("-{$days} day", strtotime($fecha)); $nuevafecha = date ( 'Y-m-d' , $nuevafecha ); $dql = "SELECT p FROM Web\BlogBundle\Entity\Posts p WHERE p.createdAt BETWEEN '{$nuevafecha}' AND '5000-01-01' ORDER BY p.createdAt DESC"; $query = $em->createQuery($dql); $posts = $query->getResult(); return $posts; }
Este método lo que hace es sacar los posts de una fecha en adelante.
24 febrero, 2017
quizás es un poco mas optimo:
$fecha = new DateTime(‘now’);
$fecha->modify(«-$days days»);