将JSON对象发布到PHP
所以我有一个巨大的javascript对象,我想把它传递给PHP 我尝试的是: -使用stringify将其作为隐藏字段的值 -点击提交 在PHP中,如果我将JSON对象发布到PHP,php,json,Php,Json,所以我有一个巨大的javascript对象,我想把它传递给PHP 我尝试的是: -使用stringify将其作为隐藏字段的值 -点击提交 在PHP中,如果我 echo $_POST['hidden'] JSON字符串看起来很完美, 但是当我使用 json_decode($_POST['hidden']) 我得到空值 如果我使用jQuery的 $.post ,我得到了理想的结果:我能够在上面使用json_解码 有人能解释一下我做错了什么吗? 谢谢您的JSON字符串可能包含一些额外的斜杠。
echo $_POST['hidden']
JSON字符串看起来很完美,
但是当我使用
json_decode($_POST['hidden'])
我得到空值
如果我使用jQuery的
$.post
,我得到了理想的结果:我能够在上面使用json_解码
有人能解释一下我做错了什么吗?
谢谢您的JSON字符串可能包含一些额外的斜杠。
在
json\u decode
之前尝试strip\u slashes
,也许您需要执行urldecode 这里有相同的错误类型
//wrong
$str1 = <<<EOD
{“dealList”:”\r\n\t”}
EOD;
//right
$str2 = <<<EOD
{“dealList”:”\\r\\n\\t”}
EOD;
//wrong
$str3 = <<<EOD
{‘dealList’:'\r\n’}
EOD;
//wrong
$str4 = <<<EOD
{‘dealList’:'\\r\\n’}
EOD;
//wrong
$str5 = “{‘dealList’:'\r\n’}”;
//wrong
$str6 = “{‘dealList’:'\\r\\n’}”;
//right
$str7 = ‘{“dealList”:”\r\n”}’;
$c = json_decode($str1);
//错了
$str1=试试这个:好的,这似乎是合理的。但是,如果我在javascript端使用(JSON2.js)JSON.stringify(object),我会通过一个隐藏的表单字段发布该字符串,我如何控制它以获得正确的字符串?