-2

我正在尝试将我的数据放入 Highchart 库中。那里显示示例如下代码。

series: [
    {
    name: 'John',
    data: [5, 3, 4, 7, 2]
    },
    {
    name: 'Jane',
    data: [2, 2, 3, 2, 1]
    },
    {
    name: 'Joe',
    data: [3, 4, 4, 2, 5]
    }
]

所以我需要它动态地作为动态输入的数组(来自 PHP)。那么我怎样才能使它成为一个 Javascript 数组呢?

使用,例如:

series: myArray;

那么如何用数组实现它呢?

var myArray = new Array();
and .. ???
4

3 回答 3

1

您可以简单地使用数组文字 ( []),如示例中所示:

var myArray = [
    {
        name: 'John',
        data: [5, 3, 4, 7, 2]
    },
    {
        name: 'Jane',
        data: [2, 2, 3, 2, 1]
    },
    {
        name: 'Joe',
        data: [3, 4, 4, 2, 5]
    }
];

这相当于:

var myArray = [];
myArray[0] = { name: 'John', data: [5,3,4,7,2] };
myArray[1] = { name: 'Jane', data: [2,2,3,2,1] };
myArray[2] = { name: 'Joe', data: [3,4,4,3,5] };

myArray对象数组也是如此。这些对象有两个属性,namedata,后者是另一个保存数字的数组。

要将数据从 PHP 发送到 Javascript,您可以使用该函数从 PHP 数组创建JSON 。json_encode()例如,在你的 PHP 中,你可以有这样的东西:

<?php

$myArray = array(
    array('name' => 'John', data => array(5,3,4,7,2)),
    array('name' => 'Jane', data => array(2,2,3,2,1)),
    array('name' => 'Joe', data => array(3,4,4,3,5)),
);

?>

<script type="text/javascript">
var myArray = <?php echo json_encode($myArray); ?>
</script>
于 2012-05-15T06:59:46.273 回答
1

如果源数组在 PHP 中,那么我会将其序列化为 JSON 并直接将其用作 JS 对象:

http://ch2.php.net/json

就像是:

var jsData = <?php echo json_encode($your stuff); ?>;

编辑:改进的例子

于 2012-05-15T07:01:54.630 回答
-1

我强烈推荐 JSON。因为它维护一个名称:值对。

于 2012-05-15T07:02:37.170 回答