我想從API獲取數據,但仍然收到'未定義屬性'PHP錯誤。在PHP中檢索JSON數據(有'未定義屬性'錯誤)
我想在數據中的Datas中獲得'SESSION_ID'。 (JSON/POST)
{
"Data":
{
"Code":"00",
"Datas":
{
"COM_CODE":"80001",
"USER_ID":"USER_ID",
"SESSION_ID":"39313231367c256562253866253939256563253838253938:0HDD9DBtZt2e"
},
"Message":"",
"RedirectUrl":""
},
"Status":"200",
"Error":null
}
而且我的PHP代碼來檢索SESSION_ID
是這樣的。首先,發送$data
並獲得SESSION_ID
。
function api_login(){
$data = array(
"COM_CODE" => "000000",
"USER_ID" => "USER"
);
$ch = curl_init("https://apifakeurl.com/Login");
$payload = json_encode($data);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
curl_close($ch);
$json = json_decode($result);
$session_id = $json->Data->Datas->SESSION_ID;
//Here is the line where I get the 'Undefined Property' error.
return $session_id;
}
我作爲PHP初學者,我不知道一個錯誤行是否是問題,還是整個結構是錯誤的。請幫忙!
'回聲$ result',看看它是否是相同的JSON爲您發佈。如果完全一樣,則不應該收到「未定義的屬性」錯誤消息。 –
在使用數據之前,您應該檢查$ result!= false,因爲這部分可能由於各種原因而失敗。 –
@AmalMurali感謝您的幫助。 '$ result'是問題。 –