Heim >Backend-Entwicklung >PHP-Tutorial > [有关问题]js数组和php数组的重口味关系

[有关问题]js数组和php数组的重口味关系

WBOY
WBOYOriginal
2016-06-13 13:09:32838Durchsuche

[问题]js数组和php数组的重口味关系
这两天在学习js 的图表生成.其中需要给js 传递这么一个数组.这是范例内的数组.所以现在的问题是

有没有快捷的方式通过php来生成这个数组? 还是需要根据这个数组结构自己人肉的用php来各种组合?



JScript code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
  series:[
                {
                    type:"column",
                    name:"阿里巴巴",
                    data:[3, 2, 1, 3, 4]
                },
                {
                    type:"column",
                    name:"John",
                    data:[2, 3, 5, 7, 6]
                },
                {
                    type:"column",
                    name:"Joe",
                    data:[4, 3, 3, 9, 0]
                },
                {
                    type:"spline",
                    name:"Average",
                    data:[3, 2.67, 3, 6.33, 3.33],
                    marker:{
                        lineWidth:2,
                        lineColor:Highcharts.getOptions().colors[3],
                        fillColor:"white"
                    }
                },
                {
                    type:"pie",
                    name:"Total consumption",
                    data:[
                        {
                            name:"Jane",
                            y:13,
                            color:"#4572A7" // Jane"s color
                        },
                        {
                            name:"John",
                            y:23,
                            color:"#AA4643" // John"s color
                        },
                        {
                            name:"Joe",
                            y:19,
                            color:"#89A54E" // Joe"s color
                        }
                    ],
                    center:[100, 80],
                    size:100,
                    showInLegend:false,
                    dataLabels:{
                        enabled:false
                    }
                }
            ]



------解决方案--------------------
newnew, 你这是哪个js库的?

我觉得首先要分析下前后端需要交互哪些数据.
1. 图表要用到的数据肯定是要前后交互的;
2. 图表展示用到的渲染选项, 比如showInLegend:false这样的数据得看你的业务, 如果你的图表有一些渲染项是后台配置的, 那也需要交互
3. 即便渲染项需要后台配置, 通常也不需要暴露全部渲染项给后台, 因此需要分析出要暴露给后台配置管理的渲染项
4. 搞清楚这些后, 再来制定前后台通讯的协议, 比如可以将数据分为数据和渲染项两部分, 前端拿到之后, 自己进行业务处理.

你讲下是什么图表控件及具体业务, 可以具体给你看看
------解决方案--------------------
所有的数据都包装在 chart = new Highcharts.Chart() 参数中
单独分割出来可能会对 js 代码组装产生困难

似乎没有看到说明文档,可考虑从他提供的48个样例中抽取参数,从 Chart({ 开始,到 }); 结束,进行分析
然后写成若干个类

工作量应该不算太大

他是 js 代码级的 json 格式,而不是数据交换的 json 格式。你用 php 产生的 json 作为参数是不会有问题的
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn