如何正确使用JSON.stringify和json_decode()
我试图通过以下方式将多维度Javascript数组传递到网站上的另一页:
在数组上使用JSON.stringify
将结果值分配给输入字段
将该字段发布到第二页
在发布的值上使用json_decode
然后使用var_dump进行测试
(直接回显已发布的变量只是看它是否通过了)
var JSONstr = JSON.stringify(fullInfoArray);document.getElementById('JSONfullInfoArray').value= JSONstr;
$data = json_decode($_POST["JSONfullInfoArray"]);var_dump($data);
echo($_POST["JSONfullInfoArray"]);
回声工作正常,但var_dump返回NULL
我做错了什么?
$postedData = $_POST["JSONfullInfoArray"];$tempData = str_replace("\\", "",$postedData);
$cleanData = json_decode($tempData);
var_dump($cleanData);
我不确定为什么,但是帖子中出现了一堆“ \”字符,将字符串中的每个变量分开
用json_last_error()
归还Bart的想法弄清楚了JSON_ERROR_SYNTAX
回答:
您需要检查中的内容$_POST["JSONfullInfoArray"]
。如果某些内容无法解析,json_decode
则会返回null
。这不是很有帮助,因此null
返回时应检查json_last_error()
以获取更多有关发生问题的信息。
以上是 如何正确使用JSON.stringify和json_decode() 的全部内容, 来源链接: utcz.com/qa/403681.html