我想在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
在其他条件下将为零,我在这里没有提及。
我该怎么做?请帮忙。
提前致谢
答案 0 :(得分:0)
你可以做这样的事情
$listfaqcount['countData'][0] = array(
'flag' => 'flagValue',
'count' => 'countValue'
);
在循环时,您可以使用您的密钥更改索引
$listfaqcount['countData'][1] = array(
'flag' => 'flagValue',
'count' => 'countValue'
);
依此类推,当您编码时,您可以这样做
echo json_encode($listfaqcount);
答案 1 :(得分:0)
您需要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
}
]
}
这只是一个你可以推送自己的格式化数组的例子。