2016-09-09 13 views
0

イム次応じて異なる結果にアクセスしようとしているが、それは仕事を得るように見えることはできません。デコード、マルチレベルのJSON

{ 
    "id": "REGNOHERE", 
    "registration": "REGNOHERE", 
    "vehicle": { 
    "dvla": { 
     "make": "AUDI", 
     "model": "A4 SE TDI 6SP", 
     "regDate": "2008-09-29", 
     "v5cDate": "2011-10-27", 
     "vin": "WAUZZZ8K99A099266", 
     "colour": "BLUE", 
     "source": "UK", 
     "exported": "1", 
     "exportedDate": "2015-12-09", 
     "imported": null, 
     "importedNi": null, 
     "importedDate": null, 
     "body": "4 DOOR SALOON", 
     "bodyClass": "CAR", 
     "seatingCapacity": 5, 
     "wheelplan": "2 AXLE RIGID BODY", 
     "co2": 139, 
     "cc": 1968, 
     "engineNumber": "CAG 120938", 
     "engineCode": "2.0 TDI E4", 
     "fuel": "HEAVY OIL", 
     "maxPower": 105, 
     "maxTechMass": 2010 
    } 

私は応答をデコードするために、以下を使用し、しようとしましたその中のデータにアクセスします。

$data = json_decode($response, TRUE); 
$carmake['vehicle']['dvla']['make']; 

私には何かがありませんか?

+3

「$ data」は「$ carmake」ではないはずですか?私は欠落している2 '}'が意図しないペーストエラーであると仮定しています。 –

答えて

1

$carmakeは存在しません。 json_decodeから作成された配列は$dataです。 $carmakeを割り当てるには、次のようにしてください。

$carmake = $data['vehicle']['dvla']['make']; 
echo $carmake; 
// output.. 
// AUDI 
+0

素晴らしい感謝!私は何かがシンプルに欠けていたことを知っていた! – NewToCode