我正在尝试创建一个常见的常量文件,以在PHP和
javascript之间共享,使用
JSON来存储常量.但是我想知道为什么要通过json_encode()将JSON从
PHP传递给javascript,以回应json声明.
假设我有PHP JSON
@H_301_3@<?PHP $json_obj = '{"const1": "val","const2": "val2" }'; ?>谷歌,似乎传递回到JavaScript的典型方式正在使用
@H_301_3@<?PHP echo json_encode($json_obj); ?>然后我相信我必须使用$.getScript()来读取PHP文件来获取$json_obj,然后使用parseJSON()使其在javascript中可用.
但为什么不这样呢?
@H_301_3@<?PHP echo 'var json = '.$json_obj; ?>这样你只需要直接加载脚本就可以直接使用json.
有什么特别的原因,为什么更有利的是使用json_encode()然后只是回应声明到javascript?
在你的情况下,$json_obj已经是一个字符串.所以没有必要.但是如果你有一个数组,你想传递给javascript json_encode将帮助你.