我运行 php 版本 5.4.31。我在解析发送到 php 文件的 JSON 时遇到问题。 我的目标是有一个对象可在另一端用于数据库工作。我在之前和之后都记录了功能,以观察所有流量,这就是我得到的。
我一直在网上搜索并尝试了很多不同的解决方案,我添加了我能找到的最接近的解决方案,它生成一个字符串与一个对象。
感谢您的帮助,我已经为此苦苦挣扎了好几个小时。
JS/Json 发送过来:
$.get('my.php', {
sc_user: JSON.stringify(obj)
});
console.log:发送过来:{"id":42876678,"kind":"user"
php 尝试一:
$plan_B = $_GET['sc_user'];
echo $plan_B;
""{\"id\":42876678,\"kind\":\"user\"
php字符串生成:
$sc_user = json_decode(stripslashes(json_encode($_GET['sc_user'])));
输出:{"id":42876678,"kind":"user"
json_decode:
$sc_user = json_decode($_GET['sc_user']);
输出:“”
最佳答案
根据您所显示的内容,JSON 无效。没有右括号。
{"id":42876678,"kind":"user"
应该是
{"id":42876678,"kind":"user"}
尝试通过 json lint 验证您发送的内容,如果原始 json 字符串无效,则任何 json 处理工具都不太可能能够处理它:
此外,作为旁注,如果您要发送 json,最佳实践是确保内容类型设置如下:
关于javascript - php/js JSON 未通过有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26248848/