我有一個來自API的json響應,我無法使用PHP中的「json_decode」來創建一個數組,以便將其作爲數組進行迭代。我總是會得到「NULL」,當我使用「var_dump」輸出時,我的「json_decode」返回。這個API響應的響應頭是「application/json」,但我不熟悉這種json格式。PHP - 我如何迭代這個json響應?
從API JSON響應看起來像這樣:
[1,"Example name","307","7","Test","455",1458572100000]
[1,"Another example name","146","7","Test","455",1458571500000]
[1,"Test","304","7","Test","455",1458572280000]
[1,"Example name 3","163","7","Hello world","455",1458571080000]
這是一個單API請求的結果/響應。現在,例如,我想要得到每一行/對象的倒數第二個數字(在這種情況下每次都是455),或者,例如,名稱(第二個值:「示例名稱」,「另一個示例名稱」,「測試」和等等)。我怎樣才能做到這一點與PHP和這個JSON格式?這將是很好,如果我可以從這個數組迭代通過。
這是一個局部實時公交車到站API,但它類似於/一樣content.tfl.gov.uk/…
,我把這個API與一個簡單的HTTP/PHP中得到使用file_get_contents
要求
"/interfaces/ura/instant_V1?returnList=stopID,stopPointName,LineID,DestinationText,estimatedTime,vehicleID&vehicleID=455")
你從api中獲得了所有4行代碼?那麼這不是有效的json。它是4個單獨的json數組粘在一起,這是json的非法語法。你必須在換行符上展開這個字符串,然後將每個單獨的行解碼爲不同的json字符串。 –
是從API的4個獨立響應還是從4個獨立的API對應的響應? – RiggsFolly
是的,這些行中的所有4行都是來自帶有http頭「application/json」的api的單個響應。根據我的請求參數,我還可以在一個響應中得到超過4條線,有時甚至是10條,50條甚至500條線。 –