Mysql
 sql >> Database >  >> RDS >> Mysql

PHP PDO SQL restituisce solo una riga di dati invece di tutte le righe

PDOStatement::fetch() restituirà solo 1 riga alla volta.

Potresti usare PDOStatement::fetchAll() :

$rows = $_stmt->fetchAll(PDO::FETCH_ASSOC);

oppure crea un ciclo in cui continui a chiamare PDOStatement::fetch() finché non restituisce false :

$rows = array();
while( $row = $_stmt->fetch(PDO::FETCH_ASSOC) ) {
  $rows[] = $row;
}

Ma quest'ultimo esempio è un po' ridondante, se vuoi comunque ottenere tutte le righe contemporaneamente, a meno che non ci siano problemi di memoria che desideri risolvere.