如何从 PDO 查询中高效地获取键值对作为关联数组?

DDD
发布: 2024-11-24 18:06:19
原创
557 人浏览过

How Can I Efficiently Fetch Key-Value Pairs from a PDO Query as an Associative Array?

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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板