我正在使用 codeigniter 设计一个应用程序并动态生成我的数组并将它们推送到我的视图中。虽然看起来很拘谨,但我还是遇到了一些问题。
在我的模型函数中,我生成这样的数组:
foreach ($Q->result_array() as $row)
{
$data[]=array(
'label'=>$row['students'],
'data'=>$row['marks']
);
}
然后我返回 $data
在我看来,我使用 json_decode 如下所示
<script>
data = <?php echo json_encode($lang);?>;
data=trim("label", '"');
//alert(data);
$.plot($("#graph4"), data,
{
series: {
pie: {
show: true,
radius: 1,
label: {
show: true,
radius: 3/4,
formatter: function(label, series){
return '<div style="font-size:8pt;text-align:center;padding:2px;color:white;">'+label+'<br/>'+Math.round(series.percent)+'%</div>';
},
background: {
opacity: 0.5,
color: '#000'
}
}
},
legend: {
show: false
}
});
</script>
但是生成的json与flotcharts库不兼容,而不是有
[{label:"Mark",data:1},{label:"Jenny",data:1}]
我有
[{"label":"Mark","data":"1"},{"label":"Jenny","data":"1"}]
如何删除双引号,使其只能应用于标签而不是数据
任何帮助,将不胜感激,
谢谢
更新:
对于那些将面临这个问题的人,我用正则表达式解决了这个问题
echo preg_replace('/"([^"]+)"\s*:\s*/', '$1:',json_encode($lang));