while в php не читает все данные из таблицы

У меня есть код с помощью которого я пытаюсь прочитать данные из таблицы.

while($row = $sth->fetch(PDO::FETCH_ASSOC)) {
    $role = array($row["content"]);
}
return $role;

Но я получаю только последнюю строку из таблицы.. Как получить все данные? fetchAll не работает, уже пробовал


Ответы (1 шт):

Автор решения: Pashok

У вас $role - просто переменная, не массив. Надо к ней добавить квадратные скобки, чтобы в неё дописывались значения, а в начале объявить её как массив:

$role = [];
while($row = $sth->fetch(PDO::FETCH_ASSOC)) {
    $role[] = array($row["content"]);
}
return $role;
→ Ссылка