De reden waarom het niets teruggeeft is omdat Doctrine aan de uitdrukking ontsnapt - de gegenereerde SQL is
WHERE (date > 'DATE_SUB(CURDATE(), INTERVAL 7 DAY)')
in plaats van
WHERE (l.action_time > DATE_SUB(CURDATE(), INTERVAL 7 DAY))
Je zou het kunnen forceren om als volgt te werken:
$date = new Doctrine_Expression('DATE_SUB(CURDATE() , INTERVAL 7 DAY)');
$q->where('date > ' . $date);
Dit is echter niet de veiligste optie, omdat de invoer niet ontsnapt en geen goede gewoonte is...