2011-11-01 128 views
1

我有一個PHP數組$行。目前我想將$ lines的值賦給一個javascript變量(即chartLines)。如何將一個php數組分配給一個javascript數組?

我將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; ?> 

       }); 
+0

使用'變種chartLines = ;' – Petr

+0

爲什麼不將數組數據輸出到javascript本身?意思是「<? $一個= ''; $ a。='

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"; 
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); 
相關問題