Requête de comptage count()
Toute requête peut avoir une « requête de comptage » correspondante. Une requête de comptage renvoie le nombre de lignes du résultat de la requête initiale. Pour obtenir une requête de comptage à partir d'une requête existante (qui est un objet de requête select implémentant SelectInterface), utilisez la méthode countQuery().
$count_query = $query->countQuery();
$count_query est maintenant une nouvelle requête select dynamique sans clauses ORDER BY, qui lors de son exécution retournera un jeu de résultats contenant une seule valeur — le nombre d’enregistrements correspondant à la requête initiale. Puisque PHP supporte le chaînage des méthodes retournant des objets, l’approche suivante est courante :
$num_rows = $query->countQuery()->execute()->fetchField();
Pour une requête d’entité (implémentant QueryInterface), le code est légèrement différent :
$num_rows = $query->count()->execute();