我使用json_encode()从MySQL检索数据。
$sq ="SELECT physics, chemistry, agriculture FROM subjects WHERE student = :student";
$stmt = $getdb->prepare($sq);
$stmt->execute(array(':student'=>"123456"));
$rslt = $stmt->fetchAll();
$sd=array();
foreach($rslt as $val){
$sd[] = $val;
}
echo json_encode($sd);
这是当前的输出数据结构
array(
array(
"0" => 97,
"1" => 38,
"2" => 73,
"physics" => 97,
"chemistry" => 38,
"agriculture" => 73,
)
);
如何输出以上内容:
array(
array(
"physics" => 97,
"chemistry" => 38,
"agriculture" => 73,
)
);
答案 0 :(得分:0)
$stmt->fetchAll(PDO::FETCH_ASSOC)
执行前 这迫使PDO仅使用关联表示。
答案 1 :(得分:-2)
从mysql中获取行时,您已使用http://php.net/manual/en/function.mysql-fetch-array.php或等效项。这使得数字索引和字符串索引。使用mysql_fetch_assoc或http://php.net/manual/en/mysqli-result.fetch-assoc.php将返回仅包含字符串索引的数组