所以我发布了一个JSON字符串中的对象数组,使用JavaScript到一个PHP脚本中,并且我在PHP中遇到了实际的问题。
我的javascript如下:
$.ajax({
type: 'POST',
url: "question_save.php",
data: {myJson: JSON.stringify(jsonArray)},
success: function(data){
alert(data);
}
});发送给PHP的字符串如下所示:
[{"content":"Question text"},{"answerContent":"Some answer text","score":"234","responseChecked":0,"responseContent":""},{"answerContent":"","score":"0","responseChecked":0,"responseContent":""}]如果我回显$ _POST ['myJson']我得到这个:
[{\"content\":\"Question text\"},{\"answerContent\":\"Some answer text\",\"score\":\"234\",\"responseChecked\":0,\"responseContent\":\"\"},{\"answerContent\":\"\",\"score\":\"0\",\"responseChecked\":0,\"responseContent\":\"\"}]然而,当我想解码JSON并像这样循环播放它时......
$json = $_POST['myJson'];
$data = json_decode($json, true);
foreach ($data as &$value) {
echo("Hi there");
}...我得到这个错误:
Warning: Invalid argument supplied for foreach() in /home/thecrime/public_html/test1/question_save.php on line 15我真的不明白我在做什么愚蠢的错误,这是否与反斜杠有关?
任何帮助非常感谢!
谢谢,
-ben