如何从mysql获取json数据并将其转换为codeigniter中的数组

6psbrbz9  于 2021-06-24  发布在  Mysql
关注(0)|答案(3)|浏览(338)

我得到如下格式的mysql结果。我想在应用程序中以json数组格式发送它。关键字数据以json数组格式存储在db中。如何将其作为json数组发送?
mysql结果

Array 
(
    [groups] => Array
        (
            [0] => stdClass Object
                (
                    [id] => 7
                    [category_name] => Serial
                    [group_name] => test group
                    [description] => efrt
                    [image] => 9955_1475731912.png
                    [time] => 07:30 AM
                    [member_count] => 0
                    [keyword] => [{"key_id":"1","key_name":"HBO"},
                                 {"key_id":"2","key_name":"BOLLYWOOD HUNGAMA"},
                                 {"key_id":"3","key_name":"SERIALS"}]
                )

        )

        "member_count": "0"
    }]
}

json编码格式

{
  "groups": [
    {
      "id": "7",
      "category_name": "Serial",
      "group_name": "test group",
      "description": "efrt",
      "image": "9955_1475731912.png",
      "time": "07:30 AM",
      "member_count": "0",
      "keyword": "[{\"key_id\":\"1\",\"key_name\":\"HBO\"},
                  {\"key_id\":\"2\",\"key_name\":\"BOLLYWOOD HUNGAMA\"},
                  {\"key_id\":\"3\",\"key_name\":\"SERIALS\"}]"
    }
  ]
}
waxmsbnn

waxmsbnn1#

首先以您希望在函数中编码的方式创建一个php数组,或者在模型中使用下面的示例(它扩展了ci\ u模型)

$query_result = $result->result(); //for get result array 
return json_encode($query_result);

样品

$array = array("test"=>"hhh",array("us"=>"letter","test"=>"ttt"));
    //print_r(json_encode($array));
    return json_encode($array);
iezvtpos

iezvtpos2#

我用这个方法问我的问题

foreach ($result['groups'] as $key ) {
                $json = $key->keyword;
                $keys = json_decode($json);
                $arrayName = array();
                foreach ($keys as $value) {
                     $key_id = $value->key_id;
                     $key_name = $value->key_name;
                     $arrayName[] = array('key_id' =>$key_id ,'key_name'              =>$key_name);
                }
    $key->keyword =  $arrayName;
 }
 $result['success']= 1; 
 echo json_encode($result);
 exit();
n8ghc7c1

n8ghc7c13#

$this->output
    ->set_content_type('application/json')
    ->set_output(json_encode($result->result()->groups));

我想这会解决的

相关问题