用Php添加字符来回应json

时间:2015-02-11 23:13:57

标签: php json encode

我正在尝试生成jqplot Graph。我有一个简单的问题,但我无法找到任何解决方案,如果你能帮助我,我将非常感激,如果我能够帮助我也会非常感激,嗨嗨。

Jqplot Graph需要这种JSON数据(在开始和结束时都有3“[”字符):

[[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]]

这是我用来生成它的工作PHP代码(除了下面介绍的json_encode()部分):

$lectureSql5="SELECT distinct count(professeur.idcategcours) as decompte,categcours.nom as nom FROM professeur INNER JOIN categcours ON professeur.idcategcours=categcours.idcategcours group by professeur.idcategcours";
$lecture5 = mysql_query($lectureSql5) or die(mysql_error());

while ($col=mysql_fetch_array($lecture5)){ 
    $col[0]=intval($col[0]); 
    $tabGen[]=array($col[1],$col[0]);
};  



echo json_encode($tabGen);


file_put_contents('g1.json', '['.json_encode($tabGen).']');

正如你所看到的,在创建数组之后,我尝试使用json_encode,并在我的html页面上得到这个:

[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]

这是一个很大的问题,因为我错过了三个“[”字符在开始和结束处!

所以我设法用file_put_contents('g1.json','['。json_encode($ tabGen)。']');它有效,但它不是我需要的,它正在创建一个文件!

我需要将该行直接与json_encode一起出现在Web导航器中!

我想创建一个主要的PHP数组,因为有三个“[”和“]”,但我不知道该怎么办?

我试过了:

echo('['.json_encode($tabGen).']');

但这也不起作用,snif!

所以我需要的是这一行直接进入我的导航器:

 [[["Sciences",5],["Lettres",2],["Informatique",1],["Commerce",1],["Technologie 1",1]]]

如果你能帮助我,我会很感激,如果我可以用javascript jquery问题或jqplot提示,我会很高兴。 谢谢你有一个niiiiiice日“嗨嗨”!啊啊啊

编辑:它确定我已经找到了解决方案

$tabAdded=json_encode($tabGen);

echo('['.$tabAdded.']');

然后,用3“[[[”和3“]]]”谢谢

正确打印行

2 个答案:

答案 0 :(得分:0)

我希望我做对了,你想在包含数组的数组中输出数组。

没有魔法,只需用另一个数组包装你的数组就可以获得所需的结果。

header('content-type', 'application/json');
echo json_encode([$a]);

答案 1 :(得分:0)

在json_encode

之前添加另一个数组级别
file_put_contents('g1.json', json_encode([$tabGen]));