我正在使用一个名为 DataTables 的 jquery 插件,它需要我返回一个 json 字符串才能呈现表格。
目前,输出的 json 看起来像这样(参见 aaData 数组):
{"sEcho":0,"aaData":[[{"ID":"1","idPatient":"122342","idFacility":"3","idTreatment":"3"}]]}
我想知道 { } 大括号是否实际上应该在 aaData 数组中。事实上,我认为大括号实际上是导致 JSON 解析错误的原因。
下面列出了生成它的实际代码。(core->dbh
是一个 PDO 句柄)
<?php
require_once('core/Core.php');
$core = Core::get_instance();
$sql = 'SELECT ID, idPatient, idFacility, idTreatment
FROM Pathology WHERE idPatient = 122342';
$stmt = $core->dbh->prepare($sql);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
// bind parameters
$stmt->execute();
// prepare output for DataTables
$data = array("sEcho" =>intval($_GET['sEcho']),
"aaData" =>array()
);
while($result = $stmt->fetchAll()) {
$data['aaData'][] = $result;
}
echo json_encode($data);
?>
有人可以告诉我如何删除花括号,或者 JSON 是否以另一种可能导致解析错误的方式格式不正确?
谢谢