所以我有这个代码:
var loc = new Array();
<?php foreach($loc as $key => $val) { ?>
loc.push('<?php print_r($val); ?>');
<?php } ?>
问题是它只显示一个值而不是多个值,就像它应该的那样。这是 php 数组代码:
$loc = array($lat, $long);
非常感谢任何帮助。
最佳答案
试试这个:
var loc = <?php echo json_encode($loc); ?>;
您不应该使用print_r
。让我引用documentation :
print_r
— Prints human-readable information about a variable
请注意我强调的部分。 “人类可读”。仅仅因为它看起来模糊地像 JavaScript 可能理解的东西,并不意味着它是;) json_encode
另一方面,专门设计用于输出 JSON,它是 JavaScript 接受的变量语法的子集。
关于javascript - PHP 到 Javascript 数组的麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22074301/