PHP到Javascript数组的麻烦

0 javascript php arrays variables

所以我有这个代码:

var loc = new Array();
        <?php foreach($loc as $key => $val) { ?>
            loc.push('<?php print_r($val); ?>');
        <?php } ?>
Run Code Online (Sandbox Code Playgroud)

问题是,它只显示一个值而不是一个,就像它应该的那样.这是php数组代码:

$loc = array($lat, $long);
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏.

Nie*_*sol 9

试试这个:

var loc = <?php echo json_encode($loc); ?>;
Run Code Online (Sandbox Code Playgroud)

你不应该使用print_r.让我引用文档:

print_r- 打印有关变量的人类可读信息

请注意我强调的部分." 人类可读 ".仅仅因为它看起来有点像JavaScript可能理解的东西,并不意味着它;)json_encode另一方面,它专门用于输出JSON,这是JavaScript接受变量的语法的一个子集.