PDO FetchAll: Schlüssel-Wert-Paare in einem assoziativen Array gruppieren
Bei Datenbankabfragen, die Schlüssel-Wert-Paare zurückgeben, ist dies oft praktisch um die Daten als assoziatives Array abzurufen, wobei die Werte ihren jeweiligen Schlüsseln zugeordnet sind. Zwar gibt es gängige Methoden, um dies zu erreichen, wie z. B. die Verwendung von fetchAll(PDO::FETCH_ASSOC) gefolgt von einer manuellen Iteration zum Erstellen des Arrays, dieser Ansatz kann jedoch umständlich sein.
Eine alternative Lösung, die speziell für diesen Zweck entwickelt wurde: besteht darin, die Option fetchAll(PDO::FETCH_KEY_PAIR) zu verwenden. Diese Methode erstellt automatisch ein assoziatives Array mit den Abfrageergebnissen und ordnet die erste Spalte den Schlüsseln und die zweite Spalte den Werten zu.
Um dies zu veranschaulichen, stellen Sie sich eine Abfrage vor, die Namens- und Wertspalten aus der Einstellungstabelle abruft :
$q = $db->query("SELECT `name`, `value` FROM `settings`;"); $r = $q->fetchAll(PDO::FETCH_KEY_PAIR);
Wenn die Datenbank in diesem Fall Zeilen wie ('Vorname', 'Tom') und ('Nachname', 'Jeferson') enthalten würde, wäre das resultierende $r-Array:
Array( 'first_name' => 'Tom', 'last_name' => 'Jeferson' )
Diese Methode bietet eine einfache und effiziente Möglichkeit, Schlüssel-Wert-Paare in ein assoziatives Array abzurufen, sodass keine manuelle Array-Erstellung erforderlich ist. Es wird von modernen PHP-Versionen und einigen beliebten Datenbanken wie PostgreSQL unterstützt.
Das obige ist der detaillierte Inhalt vonWie kann man Schlüssel-Wert-Paare mit PDO FetchAll effizient in ein assoziatives Array abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!