【问题标题】:codeigniter, how to select table data and display result in json format?codeigniter,如何选择表格数据并以json格式显示结果?
【发布时间】:2017-01-11 08:11:04
【问题描述】:

我必须从数据库表中获取数据并以 json 格式显示结果。

我的桌子 dr_hospital 看起来像:

我必须按 city_id 获取数据组,其结果应该以 jason 格式显示。

我的结果 json 必须看起来像:

[
  {"city_id": "13","hospitals":[
   {
    "id": "1",
    "name": "Medical Trust Hospital",
    "address": "MG Road, Cochin - 682 016, Kerala, India."

  },
  {
    "id": "2",
    "name": "PVS Memorial Hospital",
    "address": "Kaloor, Cochin- 682017, Kerala, India."
  }]},
 {"city_id": "1","hospitals":[  
{
    "id": "3",
    "name": "Blacktown Hospital",
    "address": "Sydney"

  },
  {
    "id": "4",
    "name": "Fairfield Hospital",
    "address": "Sydney"
  }]},
 {"city_id": "2","hospitals":[ 
  {
    "id": "5",
    "name": "Angliss Hospital",
    "address": "31 Albert Road Melbourne"

  },
  {
    "id": "6",
    "name": "Avenue Plastic Surgery",
    "address": "20 The Avenue Windsor"

  }]}

]

为了获得以上 json 格式,我应该对我的代码进行哪些更改? 我的代码如下:

public function hospitalAction()
{
      $this->db->select('*');
      $result = $this->db->get('dr_hospital')->result_array();

        if($result)
        {
           print_r(json_encode($result));    
        }
        else
        {
             $detail[] = array(
            'status'=>'unsuccess', 
            'message'=>'no hospital available',

           );

          echo  json_encode($detail); 
        }
}

提前致谢。

【问题讨论】:

  • 我认为没有任何查询会产生这样的结果。您必须为每条记录使用 for 循环手动完成。

标签: php mysql json codeigniter


【解决方案1】:
    public function hospitalAction()
{
    $result1 = $this->db->query("SELECT city_id from dr_hospital group by city_id");
    $result1=$result1->result();
    $arr= array();
    foreach ($result1 as $res) {
        $result = $this->db->query("SELECT * from dr_hospital where city_id='".$res->city_id."'");
        $result=$result->result();
        $arr[$res->city_id]=$result;
    }
    var_dump(json_encode($arr));
}

【讨论】:

    猜你喜欢
    • 2017-01-07
    • 1970-01-01
    • 2015-12-16
    • 2017-12-04
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多