php - PDO::FETCH_GROUP 为每一行返回重复值,为什么?
问题描述
我正在尝试使用 fetchAll(PDO::FETCH_GROUP) 来获取数据库中的每一行并按产品类型拆分它们。但是,在运行它时,我得到了重复的结果?因此,例如,而不是得到:
id: "0"
img_url: "products/doors/french.png"
subproduct: "French Doors"
我得到了结果:
0: "0"
1: "French Doors"
2: "products/doors/french.png"
id: "0"
img_url: "products/doors/french.png"
subproduct: "French Doors"
这是非常奇怪的行为,我一生都无法弄清楚为什么会这样?如果我将 Fetch 类型更改为仅抓取特定行,它可以抓取它们,但如果我尝试使用 Fetch_Group,我会得到上述结果。
这是我的代码:
<?php
try {
$handler = new PDO('mysql:host=127.0.0.1;dbname=allproducts', 'root', '');
$handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
die("Sorry, database problem");
}
$con = mysqli_connect("localhost", "root", "", "allproducts");
$response = array();
if($handler){
$response = $handler->query('SELECT product, id, subproduct, img_url from allproducts')->fetchAll(PDO::FETCH_GROUP);
} else {
echo "Not connected";
}
echo json_encode($response,JSON_PRETTY_PRINT);
?>
解决方案
推荐阅读
- azure - 是否可以在没有 VSCode 的情况下将 Web 应用程序部署到天蓝色?
- python - 如何使用 CSV 库在 python 中打开 CSV?
- mysql - Mysql INNER 加入和搜索结果与完全匹配
- python - 打印阿拉伯语 - 当段落在使用bid后呈现在具有多行的块中时,行的顺序是相反的
- javascript - 与 MongoDB 有多个连接正常吗?
- anylogic - 在 Anylogic 中跟踪运输车的行驶距离 [已解决]
- javascript - 按索引从 Gutenberg 块中的数组中删除项目
- asp.net-web-api - Blazor API 项目能否与客户端共享相同的 localhost 端点?
- python - 查找函数类型
- python - 根据里面的评论记录和详细说明单个脚本