我正在尝试创建一个通用常量文件以在 php 和 javascript 之间共享,使用 JSON 来存储常量。但我想知道为什么使用 json_encode()
将 JSON 从 PHP 传递到 javascript 而不是回显 json 声明。
假设我有 PHP JSON
<?php
$json_obj = '{"const1": "val",
"const2": "val2"
}';
?>
谷歌搜索,似乎传回 javascript 的典型方式是使用
<?php echo json_encode($json_obj); ?>
然后我相信我必须使用类似 $.getScript()
的东西来读取 php 文件以获取 $json_obj
然后使用 parseJSON()
使其可用于 javascript。
但为什么不改为
<?php echo 'var json = '.$json_obj; ?>
这样你所要做的就是直接加载脚本,你就可以直接使用 json 了。
使用 json_encode()
然后简单地将声明回显到 javascript 是否更有利?
最佳答案
在你的情况下 $json_obj
已经是一个字符串。所以没有必要。但是如果你有一个数组你想传递给 javascript json_encode
将帮助你。
关于php - 将 PHP JSON 传递给 Javascript : echo json_encode vs echo json declaration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18528692/