如何将一个php数组分配给一个javascript数组?
问题描述:
我有一个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; ?>
});
答
试试这个方法:
<?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; ?> ');
});
+0
我想转换数组到JSON然后到JS数组,包括Jquery是有点困难,没有必要,回声JS数组是最简单的事情 –
答
你可以试试这个:
<?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";
答
您最好的选择是使用由建议的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);
使用'变种chartLines =;' –
Petr
为什么不将数组数据输出到javascript本身?意思是“ function(){var q =“。$ myArray。”;'; ''etc –