duannao1920 2013-07-29 11:04
浏览 37
已采纳

json在codeigniter中编码和解码数组

I am doing my project in codeigniter. My issues is i will store value for 'game_aspect_details' in json format like

"{"game_aspect_details":[{"aspect_id":"1"},{"aspect_id":"4"}]}"

for this select query i will decode the json format and check that value in foreach.

    $this->db->select('game_aspect_details');
    $this->db->from('share_reviews');
    $this->db->where('review_id',6);
    $query = $this->db->get();
    $result = $query->result();
    $test = $result[0]->game_aspect_details;
    $res = json_decode($test);
    $result_array = array();        
    foreach ($res as $row)
    {            
        $this->db->select('comments');
        $this->db->from('review_ratings');
        $this->db->where('game_aspect_id',$row->game_aspect_details); //here i need
        $query1 = $this->db->get();                            to check 1 and 4 
        $resultReviews['comments'] = $query1->result();
        $result_array[] = $resultReviews;

    }
    print_r($res);
    exit;
  • 写回答

2条回答 默认 最新

  • dpwgzi7987 2013-07-29 11:15
    关注

    First this do see what you are getting in the $row within the foreach by using the print_r().

    And I hope that you need to replace the below line

    $this->db->where('game_aspect_id',$row->game_aspect_details);
    

    With following line:

    $this->db->where('game_aspect_id',$row['aspect_id']);
    

    as $row is an array not an object.

    EDITED:

    foreach ($res as $rows)
    {            
        foreach ($rows as $row)
        {            
        ........
        $this->db->where('game_aspect_id',$row['aspect_id']); //here make change
        .....
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 基于作物生长模型下,有限水资源的最大化粮食产量的资源优化模型建立
  • ¥20 关于变压器的具体案例分析
  • ¥15 生成的QRCode圖片加上下載按鈕
  • ¥15 板材切割优化算法,数学建模,python,lingo
  • ¥15 科来模拟ARP欺骗困惑求解
  • ¥100 iOS开发关于快捷指令截屏后如何将截屏(或从截屏中提取出的文本)回传给本应用并打开指定页面
  • ¥15 unity连接Sqlserver
  • ¥15 图中这种约束条件lingo该怎么表示出来
  • ¥15 VSCode里的Prettier如何实现等式赋值后的对齐效果?
  • ¥20 keepalive配置业务服务双机单活的方法。业务服务一定是要双机单活的方式