$allrows
我想通过执行以下操作将此 echo (json_encode($allrowl,JSON_PRETTY_PRINT));
转换为JSON:
fetchAll
我的问题是,此 [
{
"org_id": "1",
"0": "1",
"category": "A",
"1": "A",
},
{
"org_id": "2",
"0": "2",
"category": "A",
"1": "A",
}
]
不仅会为每个元素提取数据关联数组,还会提取索引数组,因此重复元素。
{{1}}
谢谢。
答案 0 :(得分:3)
这是因为默认提取模式为FETCH_BOTH
。将您的模式重置为FETCH_ASSOC
,您只能获得非数字键。
假设$pdo
是PDOStatement
,请在获取之前将其设置为此。
$pdo->setFetchMode(PDO::FETCH_ASSOC);
您也可以在fetch语句中设置它:
$pdo->fetchAll(PDO::FETCH_ASSOC);
答案 1 :(得分:2)
使用PDO::FETCH_ASSOC仅获取关联的数组:
$allrows = $pdo->fetchAll(PDO::FETCH_ASSOC);