PDOStatement::fetch()
ne renverra qu'une seule ligne à la fois.
Vous pouvez utiliser PDOStatement::fetchAll()
:
$rows = $_stmt->fetchAll(PDO::FETCH_ASSOC);
ou créez une boucle où vous continuez à appeler PDOStatement::fetch()
jusqu'à ce qu'il renvoie false
:
$rows = array();
while( $row = $_stmt->fetch(PDO::FETCH_ASSOC) ) {
$rows[] = $row;
}
Mais ce dernier exemple est un peu redondant, si vous voulez de toute façon obtenir toutes les lignes à la fois, à moins qu'il y ait des problèmes de mémoire que vous souhaitez résoudre.