我提出這個問題3天前,但不幸的是我不能解決我的問題,直到現在。我會再次提出這個問題,希望有人幫助我。訪問嵌套的項目從一個JSON結構與foreach PHP產生錯誤
我有以下JSON結構
{"Id":"1","Persons":[{"Name":"Luis","Time":"00:00:09","info":"","Timeext":"","Timeout":"","Timein":""}, {"Name":"Carl","Time":"00:00:03","info":"","Timeext":"","Timeout":"","Timein":""},{"Name":"Ben","Time":"00:00:08","info":"","Timeext":"","Timeout":"","Timein":""}]}
向該元件Id
不是訪問的問題。我能得到這個值是這樣的:
$arr['Id'] = $_POST['Id'];
echo $arr['Id'];
但是,如果要訪問的結構Persons
的JSON的內部,具體到每個人的時間價值,我這樣做:
$arr['Persons'] = $_POST['Persons'];
$jsdecode = json_decode($arr['Persons']);
foreach ($arr['Persons'] as $p){
echo "$p->Time <br/>";
}
這是得到的結果:
<b>Warning</b>: json_decode() expects parameter 1 to be string, array given in <b>C:\xampp\htdocs\Stopuhr\controller\prozess.controller.php</b> on line <b>38</b><br />
<br />
<b>Notice</b>: Trying to get property of non-object in <b>C:\xampp\htdocs\Stopuhr\controller\prozess.controller.php</b> on line <b>41</b><br />
<br/><br />
<b>Notice</b>: Trying to get property of non-object in <b>C:\xampp\htdocs\Stopuhr\controller\prozess.controller.php</b> on line <b>41</b><br />
<br/>
請有人幫助我嗎?
你能分享$ _POST ['Persons']的輸出嗎?你有沒有檢查你是否得到正確的輸入? – kakajan
您可以將第二個參數'true'添加到'json_decode',這樣它將返回一個關聯數組而不是一個對象。 – Crecket
如果你想從數組創建json使用['json_encode'](http://php.net/json_encode)而不是['json_decode'](http://php.net/json_decode) – kakajan