通过 PDO 使用键值对将结果集转换为关联数组
使用返回键值对的查询时,例如:
<code class="sql">SELECT `key`, `value` FROM `settings`;</code>
您可能需要一个关联数组,其中键和值对应于返回的数据。通常,这是通过涉及以下过程来实现的:
<code class="php">$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']; }</code>
虽然此方法很常见,但它需要多次迭代并存在潜在的性能问题。但是,还有一个可用的替代解决方案:
<code class="php">$q = $db->query("SELECT `name`, `value` FROM `settings`;"); $r = $q->fetchAll(PDO::FETCH_KEY_PAIR);</code>
PDO::FETCH_KEY_PAIR 常量允许您直接从查询中以关联数组形式检索数据,从而简化了流程并可能提高较大结果集的性能。
以上是如何使用 PDO 高效地将数据库结果转换为关联数组?的详细内容。更多信息请关注PHP中文网其他相关文章!