清理从PHP数组转换的格式化JSON

Dan*_*Lee 0 php arrays 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"
    }
]
Run Code Online (Sandbox Code Playgroud)

这是我目前的代码...

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');
Run Code Online (Sandbox Code Playgroud)

这是当前的样子...请注意,结尾不需要逗号。括号之间的间距也不是真正有用的...我如何修改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"
},]
Run Code Online (Sandbox Code Playgroud)

Nig*_*Ren 5

创建要编码的数据数组,$data使用添加每个项目$data[] =,然后echo json_encode($data);获取正确的格式...

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);
}
Run Code Online (Sandbox Code Playgroud)