【问题标题】:return multiple array through json in codeigniter在codeigniter中通过json返回多个数组
【发布时间】:2014-08-26 05:07:04
【问题描述】:

我想在 codeigniter 中使用 json 返回多个数组,如下所示:

   {
         "countData"
             [
                 {"flag":1,"count":3}
                 {"flag":0,"count":0}
                 {"flag":1,"count":2}
             ]
     }

我已经试过了:

    $faqdata=array(
                       'count' => $faqdata['countdata']['resultdata']['count'],
                   )
     $listfaqcount['count_Data'][]=$faqdata;
     $listfaqcount['flag'] =1;
     $j_r=json_encode($listfaqcount);
     echo $j_r;

像这种方式,另外两个数组 .flag 在其他情况下为零,我在这里没有提到。

我该怎么做?请帮忙。

提前致谢

【问题讨论】:

    标签: php arrays json codeigniter


    【解决方案1】:

    你可以这样做

    $listfaqcount['countData'][0] = array(
        'flag' => 'flagValue',
        'count' => 'countValue'
    );
    

    当你循环时你用你的键更改索引

    $listfaqcount['countData'][1] = array(
        'flag' => 'flagValue',
        'count' => 'countValue'
    );
    

    等等,当你编码时你可以这样做

    echo json_encode($listfaqcount);
    

    【讨论】:

    • 它不起作用。这里countData 出现三次,而我希望countData 只出现一次,即它是 json 术语中的一个对象。
    【解决方案2】:

    你需要像array_push这样的东西

    $array['countdata'] = [];
    

    创建我们的样本数组集

    $somearray1 = ['flag'=>9,"count"=>5];
    $somearray2 = ['flag'=>6,"count"=>6];
    $somearray3 = ['flag'=>5,"count"=>7];
    $somearray4 = ['flag'=>4,"count"=>8];
    

    基本上这里发生的情况是每次循环将数组推入$array['countdata']

    array_push($array['countdata'], $somearray1); //loop 1 format and push
    array_push($array['countdata'], $somearray2); //loop 2 format and push
    array_push($array['countdata'], $somearray3); //loop 3 format and push
    array_push($array['countdata'], $somearray4); //loop 4 format and push
    

    漂亮或漂亮地打印结果

    print_r(json_encode($array,JSON_PRETTY_PRINT));
    

    结果是

    {
        "countdata": [
            {
                "flag": 9,
                "count": 5
            },
            {
                "flag": 6,
                "count": 6
            },
            {
                "flag": 5,
                "count": 7
            },
            {
                "flag": 4,
                "count": 8
            }
        ]
    }
    

    这只是一个示例,您可以推送自己的格式化数组。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-09
      • 1970-01-01
      • 2015-09-08
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      • 2015-02-06
      相关资源
      最近更新 更多