从查询中显示有效的JSON数组

时间:2013-06-02 05:36:08

标签: arrays json codeigniter

我有一个函数来显示包含多个注册ID和数据的JSON数组。我正在使用CodeIgniter。我尝试使用this library使用通知。

public function send_notification($id_user, $message) {
  if ($this->muser->cek_follower($id_user) == TRUE) {
    $query = $this->muser->get_list_follower($id_user);
    $feedback['registration_id'] = array();
    foreach ($query->result() as $row) {
      $query_list_user = $this->muser->get_all_name_user_from_id($row->id_follower);
      if ($query_list_user->num_rows() > 0) {
        $row = $query_list_user->row();
        $response= $row->regid;
      } else {
        $feedback = 0;
      }
      array_push($feedback, $response);
    }
    $feedback['data'] = $message;
    echo json_encode($feedback);
  } else {
    $feedback = 0;
    echo json_encode($feedback);
  }
}

我从this url尝试了GET,但输出就像这样

{
    "0": "XX3",
    "1": "XX4",
    "2": "XX2",
    "registration_id": [],
    "data": "ada"
}

如何制作这样的输出?

{
    "registration_id": [
        "XX3",
        "XX4",
        "XX2"
    ],
    "data": "ada"
}

我尝试过并尝试过。请帮我。感谢。

1 个答案:

答案 0 :(得分:0)

您将$response数据直接推送到父数组$feedback,而不是实际将其推送到$feedback['registration_id]。

因此;替换这个:

array_push($feedback, $response);  

用这个:

array_push($feedback['registration_id'], $response);