2016-08-26 8 views
3

結果をjson形式で表示する必要があります。 私のコードは次のようになります。Codeigniter、データベーステーブルのデータを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"}] 

コード内のすべての変更を行ってください。

+0

配列内のすべての行を取得し、結果をエンコードします。 – jeroen

+0

foreach($ query-> result()$行として) { $ data ['id'] = $ row-> id; $データ['country_name'] = $ row-> country_name; echo json_encode($ data); }は機能しませんが、結果は同じです –

答えて

2

アレイ内のレコードを取得し、モデルで

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

それをコードは、使用result_array()

return $query->result_array(); 
1

を書き込みます。

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

foreach($query->result_array() as $row) 
{ 
    echo json_encode($row); 
} 
関連する問題