提问者:小点点

如何在codeigniter中更新我的数组并返回


我有一个codeigniter模型函数,它需要像这样返回数组。。。

{"speakers":[{
        "id":"1",
        "name":"Jack",
        "events":{
              "id":"1"
              "name":"event1",
             },
             {
              "id":"2"
              "name":"event2",
             },
        "status":"Active",
    },
    {
        "id":"2",
        "name":"Tom",
        "events":{
              "id":"3"
              "name":"event3",
             },
        "status":"Active",
    },
        {
        "id":"3",
        "name":"Maria",
        "events":{
              "id":"1"
              "name":"event1",
             },
        "status":"Active",
    }]
}

这是我的代码:

function speakers()
    {


        $speakers=$this->db->get("speakers_tbl");

        $data = array();

        if($speakers->num_rows()>0)
        {
            foreach ($speakers->result_array() as $row)
            {
                $this->db->from('events_tbl');
                $this->db->where('speaker_id', $row['id']);
                $final = $this->db->get()->result_array();

                $data[] = array_merge($row, $final);

            }
            return $data;
        }
}

…………………………………………………………………………………………………………………………………………………………………………………………………………………… 谢了。


共1个答案

匿名用户

您需要的输出是数据的JSON表示。

更改:

返回$data;

对于

返回json_encode($DATA);

现在,如果您也想要一个缩进显示(如您的示例),当输出到浏览器时,您可以使用print“

”.print_r($data,true)。“
”;