清理格式化后的从PHP数组转换而来的JSON
清理格式化后的从PHP数组转换而来的JSON
这个问题已经有了答案:
我正在尝试使用 PHP 查询数据库,以获得以下格式的 JSON...请注意,没有最终逗号
[ { "ID": "4", "Name": "Jill Higgins", "Job Title": "Designer", "Organisation": "Design Widget", "Organisation Type": "Academia", "Latitude": "54.669978", "Longitude": "-1.452469" }, { "ID": "5", "Name": "Bob Billy", "Job Title": "Clown", "Organisation": "Big Comp INC", "Organisation Type": "Company", "Latitude": "54.669978", "Longitude": "-1.452469" } ]
这是我目前的代码...
if (PerchUtil::count($members)) { echo '['; foreach ($members as $Member) { //prepare the data $data = array( 'ID' => $Member->memberID(), 'Name' => $Member->first_name() . ' ' . $Member->last_name(), 'Job Title' => $Member->expert_job_title(), 'Organisation' => $Member->expert_org_name(), 'Organisation Type' => $Member->expert_org_type(), 'Latitude' => $Member->expert_org_latitude(), 'Longitude' => $Member->expert_org_longitude() ); } echo ']'; } header('Content-Type: application/json');
这是它目前的样子...请注意结尾处有一个逗号,而我不需要它。括号之间的空格也没有什么用...我该如何修改 PHP 代码,使其更简洁,而且不会加上最后的逗号?
[{ "ID": "4", "Name": "Jill Higgins", "Job Title": "Designer", "Organisation": "CPI", "Organisation Type": "Academia", "Latitude": "54.669978", "Longitude": "-1.452469" },{ "ID": "5", "Name": "Bob Billy", "Job Title": "Clown", "Organisation": "Big Comp INC", "Organisation Type": "Company", "Latitude": "54.669978", "Longitude": "-1.452469" },]
admin 更改状态以发布 2023年5月23日
创建一个 $data
数组来存储你想要编码的数据,使用 $data[] =
添加每个项目,然后使用 echo json_encode($data);
获取正确的格式... \n
if (PerchUtil::count($members)) { $data = []; foreach ($members as $Member) { //prepare the data $data[] = array( 'ID' => $Member->memberID(), 'Name' => $Member->first_name() . ' ' . $Member->last_name(), 'Job Title' => $Member->expert_job_title(), 'Organisation' => $Member->expert_org_name(), 'Organisation Type' => $Member->expert_org_type(), 'Latitude' => $Member->expert_org_latitude(), 'Longitude' => $Member->expert_org_longitude() ); } echo json_encode($data, JSON_PRETTY_PRINT); }