如何将php数组分配给javascript数组?

时间:2011-11-01 16:40:25

标签: jquery

我在PHP中有一个数组$行。目前我想将$ lines值赋给javascript变量(即chartLines)。

我将php数组分配给javascript的方式不正确。

任何人都可以帮助我吗?提前谢谢!

<?php
    $line1 = array(array("08:00","20"),array("08:00","16"),array("08:00","19"),array("08:00","17"));

    $line2 = array(array("08:00","45"),array("08:00","47"),array("08:00","49"),array("08:00","47"));

    $lines= array($line1,$line2);  
?>


 <script type="text/javascript">
    $(function () {

        var chartLines = <?php echo $lines; ?>  

                });

4 个答案:

答案 0 :(得分:1)

尝试这种方式:

<?php
    $line1 = array(array("08:00","20"),array("08:00","16"),array("08:00","19"),array("08:00","17"));

    $line2 = array(array("08:00","45"),array("08:00","47"),array("08:00","49"),array("08:00","47"));

    $lines= array($line1,$line2);  
    $json = json_encode($lines);
?>

 <script type="text/javascript">
    $(function () {

        var chartLines = jQuery.parseJSON('<?php echo $json; ?>  ');

                });

答案 1 :(得分:0)

答案 2 :(得分:0)

你可以试试这个:

<?php
# create PHP array:
$php_array = array("one", "two", "three");

echo "<script language='JavaScript'>\n";

echo "var js_array = new Array();\n";

$ix = 0;

foreach($php_array as $key => $value)
{
echo "js_array[$key] = $value;\n";
}

echo "</script>\n";

答案 3 :(得分:0)

您最好的选择是使用其他人建议的json_encode PHP函数,如下所示:

<?php
  $chartLines = array("item1" => "val1", "item2" => "val2", "item3" => "val3");
  $chartJSON = json_encode($chartLines);
?>

<script type="text/javascript">
  var chartLines = jQuery.parseJSON('<?php echo $chartJSON; ?>');
</script>

如果你在JS方面也需要一个数组(不是parseJSON将返回的对象),你也可以使用jQuery来做到这一点:

var chartArr = jQuery.makeArray(chartLines);