使用PDO获取关联数组需设置模式为PDO::FETCH_ASSOC,执行查询时通过fetch()或fetchAll()返回字段名键数组,预处理语句同样适用,亦可全局设置ATTR_DEFAULT_FETCH_MODE属性使所有结果默认为关联数组。

在PHP中使用PDO获取关联数组,关键在于设置获取模式为关联数组。PDO默认支持多种获取方式,其中PDO::FETCH_ASSOC专门用于返回关联数组,只包含字段名作为键,不包含数字索引。
设置获取模式为关联数组
执行查询后,调用 fetch() 或 fetchAll() 方法时指定获取模式:
$stmt = $pdo->query(“SELECT id, name FROM users”);$result = $stmt->fetch(PDO::FETCH_ASSOC); // 获取单行// 或$results = $stmt->fetchAll(PDO::FETCH_ASSOC); // 获取所有行
预处理语句中使用关联数组
使用预处理语句更安全,尤其处理用户输入时。执行后同样可获取关联数组:
$sql = “SELECT * FROM users WHERE age > ?”;$stmt = $pdo->prepare($sql);$stmt->execute([18]);$users = $stmt->fetchAll(PDO::FETCH_ASSOC);
全局设置默认获取模式
如果希望所有查询默认返回关联数组,可以在创建PDO实例后设置属性:
立即学习“PHP免费学习笔记(深入)”;
$pdo = new PDO($dsn, $user, $pass);$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
设置后,后续的 fetch() 和 fetchAll() 调用无需再传参数,自动返回关联数组。
基本上就这些。只要注意选择正确的获取模式,PDO就能轻松返回你需要的关联数组格式。
以上就是php中PDO获取关联数组的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1340134.html
微信扫一扫
支付宝扫一扫