Codeigniter,如何获取以json格式显示的数据库表数据?

Posted

技术标签:

【中文标题】Codeigniter,如何获取以json格式显示的数据库表数据?【英文标题】:Codeigniter, How to get database table data displayed in json format? 【发布时间】:2017-01-03 00:17:34 【问题描述】:

我必须以 json 格式显示结果。 我的代码如下:

 $this->db->select("*");
        $this->db->from('country');  
        $query = $this->db->get();

        foreach($query->result() as $row)
        
            echo json_encode($row);
         

结果如下:

"id":"1","country_name":"Australia","country_code":"61""id":"2","country_name":"Bangladesh","country_code":"880""id":"3","country_name":"Brazil","country_code":"55"

我必须在 [] 中获取这个 json 并用逗号 (,) 分隔。那就是我希望结果看起来像:

["id":"1","country_name":"Australia","country_code":"61","id":"2","country_name":"Bangladesh","country_code":"880","id":"3","country_name":"Brazil","country_code":"55"] 

我应该对代码进行哪些更改。

【问题讨论】:

获取数组中的所有行并对结果进行编码。 foreach($query->result() as $row) $data['id']=$row->id; $data['country_name']=$row->country_name;回声 json_encode($data); 不工作,但结果看起来一样 【参考方案1】:

检索数组中的记录,然后对其进行编码

$result = $this->db->get('country')->result_array();
print_r(json_encode($result));

【讨论】:

【参考方案2】:

在模型中写入

return $query->result_array();

【讨论】:

【参考方案3】:

使用result_array()

$this->db->select("*");
$this->db->from('country');  
$query = $this->db->get();

foreach($query->result_array() as $row)

   echo json_encode($row);

【讨论】:

以上是关于Codeigniter,如何获取以json格式显示的数据库表数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何在codeigniter中显示json数据[重复]

在数据表codeigniter中使用json显示数据

如何使用 thymeleaf 和 Spring Boot 以 json 格式显示用户输入数据

显示从控制器传递的表(视图)中的数据 - Codeigniter

如何从codeigniter中的模型生成json格式

如何在codeigniter中使用mysql substring_index计算JSON格式数据的总和