PDO. Как вернуть данные в формате ключ-значение (key-value)?


Работа с данными в формате ключ-значение — другими словами с ассоциативными массивами очень удобна. Сейчас приведу просто пример как заставить PDO вернуть записи БД сразу в формате ключ-значение.

Это полезно, когда Вам нужно получить, например id и название записи. При этом формат по умолчанию, мягко говоря не удобен при необходимости обращения по id.

Сравните два формата:

[
    0 => [
        'id'   => 10,
        'name' => 'Onfor'
    ]
]
// против
[
    10 => 'Onfor'
]

Для реализации такого решения следует использовать следующий код:

$q = $db->query("SELECT `id` AS id, `name` AS name FROM `some_table`;");
$r  = $q->fetchAll(PDO::FETCH_KEY_PAIR);

Данная опция позволит сгруппировать полученные данные так, что мы сразу же можем получить нужное имя, используя $id. Например, $r[$id] — вернет имя для ID = 10.

, , , ,

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *