Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要在Javascript中使用的PHP数组的数据库字符串值_Javascript_Php_Arrays_Google Visualization - Fatal编程技术网

要在Javascript中使用的PHP数组的数据库字符串值

要在Javascript中使用的PHP数组的数据库字符串值,javascript,php,arrays,google-visualization,Javascript,Php,Arrays,Google Visualization,我需要将值存储到Wordpress数据库中,然后在Google图表中使用该值 问题是: 1.我使用什么格式将其存储到数据库中? 目前我正在使用WP-TYPES,并将数组添加到多行框中,如下所示: ['Month','Value 1','Value 2'],['2004',1000,400],['2005',1170,460],['2006',660,1120],['2007',1030,540] 这就是它需要在Javascript中为图表输出的内容 在PHP中将字符串转换为数组(操作不正确)

我需要将值存储到Wordpress数据库中,然后在Google图表中使用该值

问题是: 1.我使用什么格式将其存储到数据库中? 目前我正在使用WP-TYPES,并将数组添加到多行框中,如下所示:

['Month','Value 1','Value 2'],['2004',1000,400],['2005',1170,460],['2006',660,1120],['2007',1030,540]
这就是它需要在Javascript中为图表输出的内容

  • 在PHP中将字符串转换为数组(操作不正确) 我使用以下方法检索数据:
  • $graphdata=types\u render_字段(“图形数据”,数组(“输出”=>“原始”,“分隔符”=>“;”))

    这给了我一个字符串值

    然后我将其添加到数组中:
    $thechartcontent[$i]=[
    “name”=>获取标题(),
    “chartheaders”=>数组($graphdata),
    ];

  • 在JavaScipt中: 我将PHP数组设置为Java

    var chart1=

  • 然后我将数据从数组中获取到一个变量:

     var chartheaders1 = chart1['chartheaders'];
    
    这就是我被卡住的地方。我得到的值是一个字符串。它需要准确地表明这一点:

    ['Month','Value 1','Value 2'],['2004',1000,400],['2005',1170,460],['2006',660,1120],['2007',1030,540] 
    
    让它工作


    请提供任何帮助。

    好吧,它不会完全像你想要的那样,因为它是用JSON格式编码的JSON。或者您可以在JS中将对象转换为数组。

    我怀疑您输出的是一个包含字符串的数组,而这不是您想要的。在将数据添加到
    $thechartcontent
    之前,必须将
    $graphdata
    拆分为包含数据的数组:

    $graphdata = substr($graphdata, 1, strlen($graphdata) - 1); // trim the opening and closing brackets
    $graphdata = explode('],[', $graphdata); // split $graphdata into an array of strings
    foreach($graphdata as &$row) {
        $row = explode(',', $row); // split the row into an array
    }
    $thechartcontent[$i] = array(
        'name' => get_the_title(),
        'chartheaders' => $graphdata
    );
    
    当您对数据进行json编码时,应该使用
    json\u NUMERIC\u CHECK
    常量,这样您的数字就不会被引用为字符串:

    var chart1 = <?php echo json_encode($thechartcontent[0], JSON_NUMERIC_CHECK); ?>;
    
    var chart1=;
    
    您尝试过JSON格式吗?我有。尝试了json_解码、分解和序列化,但我如何才能得到完全一样的结果。否则图表就不起作用了。我是否应该以不同的格式存储它?如果您不想更改格式以强制json_encode编码为数组,请尝试在JS中将对象转换为数组。例如jQuery.makeArray()