Как вывести данные из БД с ключами?
Разумеется, такой режим есть. И разумеется, он совершенно неизвестен тем, кто учил похапе по видеокурсам.
PDO умеет возвращать данные в десятках разных форматов, и в частности индексировать выборку  первым полем указанным в запросе $data = $stmt->fetchAll(PDO::FETCH_UNIQUE);
В случае, если нам нужен словарь то для этого есть режим, который возвращает не вложенные массивы, а одномерный массив, который состоит из пар ключ-значение$data = $pdo->query("SELECT id, name FROM table")fetchAll(PDO::FETCH_KEY_PAIR);
У вас и так ключи берутся. Что вы хотите?