PHP를 사용하여 다른 웹 서버에 JSON 데이터를 검색하도록 요청하면 요청이 작동하는 것으로 보이고 var_dump를 사용하여 데이터를 액세스 할 수 있는지 확신 할 수 없습니다.JSON PHP 데이터를 성공적으로 가져 왔지만 액세스 할 수 없습니다.
이 데이터 획득에 대한 내 코드입니다 :
$response = Requests::get($mydetails);
$array1 = json_decode(json_encode($response), true);
을 거의 모든 나는 시도 것들 (예 : 에코 $ array1-> 동작 ->에서 그 결과> 상태) 나에게 같은 오류 메시지 제공 다음 decod 후
array(9) {
["body"]=>
string(7017) "{"operation":{"result":{"status":"Success","message":"Request details listed successfully"},"details":[{"fields":[{"name":"requesttype","value":"Incident","type":"Pick List","displayvalue":"Request Type","allowedvalues":["Incident","Request for Change","Request For Information","Request for Work"],"mandatory":"false"},{"name":"impact","value":"Affects User","type":"Pick List","displayvalue":"Impact","allowedvalues":["Affects Business","Affects Department","Affects Group","Affects User"],"mandatory":"false"},{"name":"status","value":"Closed","type":"Pick List","displayvalue":"Status","allowedvalues":["Awaiting Customer","Awaiting Third Party","Closed","More Information Required","Open","Resolved"],"mandatory":"false"},{"name":"impactdetails","value":"-","type":"Multi Line","displayvalue":"Impact Details","allowedvalues":[""],"mandatory":"false"},{"name":"mode","value":"Phone Call","type":"Pick List","displayvalue":"Mode","allowedvalues":["Customer Portal","E-Mail","Fax","On-Site Request","Phone Call"],"mandatory":"false"},{"name":"priority","value":"Severity 2","type":"Pick List","displayvalue":"Priority","allowedvalues":["National Level 1","National Level 2","Request for Change","Severity 1","Severity 2","Severity 3","Severity 4"],"mandatory":"false"},{"name":"department","value":"General Practice","type":"Not Editable","displayvalue":"Department","allowedvalues":[""],"mandatory":"true"},{"name":"requesteremail","value":"","type":"Not Editable","displayvalue":"E-mail","allowedvalues":[""],"mandatory":"false"},{"name":"requestercontactnumber","value":"","type":"Not Editable","displayvalue"
왜 'json_decode (json_encode ($ response), true);'를 수행하고 있습니까? 인코딩 후 즉시 디코딩하는 것은 무엇입니까? '$ response' 란 무엇입니까? 왜 직접 사용할 수 없습니까? 그 문제로 해결하려는 문제는 무엇입니까? –
P. '$ array1'은 객체가 아니라 배열입니다. (즉,'json_decode()'의 두 번째 매개 변수가하는 것입니다). echo $ array1 [ 'operation'] [ 'result'] [ 'status']' –
다음을 수행하여 문제를 해결할 수있었습니다 : $ response = Requests :: get ($ mydetails); $ array = json_decode ($ response -> body); echo $ array-> operation-> result-> status; – djh123