javascript - PHP 到 Javascript 数组的麻烦

标签 javascript php arrays variables

所以我有这个代码:

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/

相关文章:

javascript - 在 Rhino 中使用 JSHint 的配置文件

javascript - CKEDITOR.config.allowedContent true 不工作

javascript - js Array.prototype.filter.call() - 有人能解释一下这段代码是如何工作的吗?

c++ - 堆数组分配而不是在堆栈上

javascript - Ext.grid.View 在 ext 4 中丢失了配置选项(自动填充)

Javascript/jQuery 使用正则表达式搜索 "minute:second"时间

javascript - jQuery 委托(delegate)回调

php - Laravel 5.4 Markdown 邮件字符问题

javascript - Javascript JSON.stringify 和 PHP json_encode 一样吗?

php - stdClass 类的对象无法转换为字符串