如何在 PHP 中为 google 图表创建数组

How to create array in PHP for google charts

我想在 PHP 中创建一个数组以与 Google 图表一起使用。

这是我试过的代码,但不起作用。

其中 Y=$r 且 X=$x_n_2;

for($r=1; $r<=4; $r++){
  for($i=1; $i<10; $i++){
    $x_n_1=$i+1;
    $x_n=$i;
    $x_n_2=$r*$x_n*(1-$x_n);
   echo $x_n_2.'<br>' ; 
  }
} 

这是我想要的数组:

$data = google.visualization.arrayToDataTable([
            ['Y', 'X', ],
            ['1',0],
            ['',-2],
            ['',-6],
            ['',-12],
            ['',-20],
            ['',-30],
            ['',-42],
            ['',-56],
            ['',-72],
            ['2',0],
            ['',-6],
            ['',-18],
            ['',-36],
            ['',-60],
            ['',-90],
            ['',-126],
            ['',-168],
            ['', -216],
           ...

有什么方法可以自动做到这一点吗?

这将创建一个 PHP 数组:

for($r=1; $r<=4; $r++){
  for($i=1; $i<10; $i++){
     $chart[i+1] = array($i,$r*$i*(1-$i));
   }
 }

不确定我的元素方程是否正确,但你应该明白了。

在 PHP 中创建数组以在 JavaScript 中使用:
此代码已经过测试

    $js = 'var chart = [';   // start JavaScript array

    for($r=1; $r<=4; $r++){
      for($x=1; $x<10; $x++){
         $y = $r*$i*(1-$i);
         $js .= "[$x,$y],";    // append set of array elements
       }
     }
     $js = substr($js,0,-1) . "];\n";  // remove last comma, close array, end line
    echo <<<EOT    // add the array ($js) to JavaScript
    <script type="text/javascript"> //<![CDATA[
    $js
    //]]>
    </script>
    EOT;

echo <<<EOT后面的注释一定要删掉,EOT后一行什么都不行,space也不行。

//<![CDATA[//]]> 不是注释,它们是用来告诉 HTML 解析器不要将 JavaScript 解析为 HTML。我用它们来消除 W3C HTML 标记验证器报告的错误。

结果:

<script type="text/javascript"> //<![CDATA[
var chart = [[1,0],[2,0],[3,0],[4,0],[5,0],[6,0],[7,0],[8,0],[9,0],[1,0],[2,0],[3,0],[4,0],[5,0],[6,0],[7,0],[8,0],[9,0],[1,0],[2,0],[3,0],[4,0],[5,0],[6,0],[7,0],[8,0],[9,0],[1,0],[2,0],[3,0],[4,0],[5,0],[6,0],[7,0],[8,0],[9,0]];

//]]>
</script>