Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie kann die „fetchAll'-Methode von PDO ein assoziatives Array aus aus einer Datenbank abgerufenen Schlüssel-Wert-Paaren erstellen?

Linda Hamilton
Freigeben: 2024-11-24 04:47:17
Original
848 Leute haben es durchsucht

How can PDO's `fetchAll` method create an associative array from key-value pairs retrieved from a database?

PDO FetchAll: Gruppieren von Schlüssel-Wert-Paaren in einem assoziativen Array

Frage:

Beim Abrufen von Schlüssel-Wert-Paaren Wie können wir aus einer Datenbank mit fetchAll von PDO ein assoziatives Array mit nach Schlüsseln gruppierten Werten erhalten? Methode?

Beispielsweise bei der Abfrage:

SELECT `key`, `value` FROM `settings`;
Nach dem Login kopieren

Wir möchten ein Array wie folgt erstellen:

array('first_name' => 'Tom', 'last_name' => 'Jefferson')
Nach dem Login kopieren

Antwort:

PDO bietet hierfür eine einfache und effiziente Lösung:

$q = $db->query("SELECT `key`, `value` FROM `settings`;");
$r = $q->fetchAll(PDO::FETCH_KEY_PAIR);
Nach dem Login kopieren

Dies Ansatz:

  • Führt die Abfrage aus und ruft alle Zeilen in das $q PDOStatement-Objekt ab.
  • Ruft fetchAll() mit PDO::FETCH_KEY_PAIR auf, um die Ergebnisse nach der ersten Spalte (Schlüssel) zu gruppieren ) und weisen Sie die zweite Spalte (Wert) als entsprechenden Wert zu.
  • Speichert das assoziative Array im $r Variable.

Diese Methode ist für diesen speziellen Anwendungsfall optimiert, da sie die Daten mit einer einzigen Abfrage und direkt in das gewünschte assoziative Array-Format abruft.

Für PostgreSQL 9.1 und PHP 5.3.8 läuft unter Windows 7 x64, diese Lösung funktioniert nachweislich effektiv.

Das obige ist der detaillierte Inhalt vonWie kann die „fetchAll'-Methode von PDO ein assoziatives Array aus aus einer Datenbank abgerufenen Schlüssel-Wert-Paaren erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage