我已經嘗試了許多解決方案,但都沒有工作。我想在PHP中迭代json數組。以下是我的JSON字符串:如何在PHP中迭代JSON數組?
{
"0":
{
"problem_id":"13",
"onset_date":"2011-02-07",
"status":"Active",
"operator":"",
"problem_name":"Allergic Conjunctivitis (372.05)"
},
"1":
{
"problem_id":"132512",
"onset_date":"2017-06-12",
"status":"Active",
"operator":"",
"problem_name":"diabetes macular edema - 10"
},
"pbids":
{
"0":"13",
"1":"132512"
}
}
以下是JSON字符串發送到服務器的代碼:
var finalArrayString = JSON.stringify(convertFormDataToJSONArray());
try{
alert(JSON.parse(finalArrayString));
alert(true);
}catch(e){
alert(false);
}
alert(finalArrayString);
$.ajax({
url: "index.php",
type: 'POST',
data: {problems: finalArrayString},
beforeSend: function() {},
success: function(returnedData) {
alert(returnedData);
},
error: function(jqXhr, textStatus, errorThrown){
alert(errorThrown);
}
});
以下是我的PHP代碼:
if ($_POST['problems'] && $_POST['problems'] != "") {
$problems = $_POST['problems'];
foreach ($problems as $key) {
echo $key;
}
}
但不打印輸出。我還檢查了json字符串是否有效,使用JSON.parse()
,但它返回true。
'var_dump($ problems)'的輸出是什麼? –
'$ problems = json_decode($ _ POST ['problems'],true);' – Steve
你的「數組」看起來不像我的數組。它沒有方括號。 http://www.json.org/ –