PDO 將所有組鍵值對放入關聯數組
在處理返回鍵值對的查詢時,通常需要檢索結果作為關聯數組。考慮以下查詢:
SELECT `key`, `value` FROM `settings`;
目標是取得一個關聯數組,其中鍵對應於鍵列,值對應於值列。
傳統方法涉及取得使用 PDO::FETCH_ASSOC 的結果,然後使用循環手動建立關聯陣列:
$settings_flat = $db ->query("SELECT `name`, `value` FROM `settings`;") ->fetchAll(PDO::FETCH_ASSOC); $settings = array(); foreach ($settings_flat as $setting) { $settings[$setting['name']] = $setting['value']; }
但是,有一種更有效的方法可以使用PDO::FETCH_KEY_PAIR:
$q = $db->query("SELECT `name`, `value` FROM `settings`;"); $r = $q->fetchAll(PDO::FETCH_KEY_PAIR);
此方法直接傳回一個關聯數組,其中鍵對應於鍵列,值對應於值列。
這種方法不僅更簡潔,而且還避免了不必要的循環和陣列創建。它是將鍵值對結果轉換為關聯數組的便捷高效的解決方案。
以上是如何從 PDO 查詢中高效率地取得鍵值對作為關聯數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!