2015-10-17 57 views
0

我有一個對象是這樣的:PHP json_decode解析問題

[ 
[ 
    "checkthisout.net", 
    "1524621", 
    "1", 
    "Amazing Wines", 
    "", 
    "0", 
    "", 
    " ", 
    " ", 
    "hash", 
    { 
     "i": "http://img.chekthisout.net/xyz.jpg", 
     "l": "//link_to_checkthisout.net", 
     "adc": [] 
    } 
], 
[ 
    "allthebuzz.com", 
    "1482859", 
    "1", 
    "Best Retirement Communities in USA", 
    "", 
    "0", 
    "", 
    " ", 
    " ", 
    "hash", 
    { 
     "i": "http://img.allthbuzz.com/abc.jpg", 
     "l": "//link_to_allthebuzz.com", 
     "adc": [] 
    } 
], 
] 

當我使用json_decode()在此,我得到一個數組的預期。但是,大括號內容被解析爲「stdClass」(由調試器報告)。我不確定如何在我的代碼中訪問這些數據?

+0

您可能希望傳遞'true'作爲'json_decode'的第二個參數:[doc](http://php.net/manual/en/function.json-decode.php) – Federkun

回答

3

true作爲json_decode()第二個參數。

這樣它將返回一個關聯數組而不是一個對象。

或者您可以使用get_object_vars()從對象中獲取數據。

+1

傳遞第二個布爾參數。感謝您的及時迴應。 – hvs

3

你必須true值的第二ARG傳遞給json_decode(),如果你想要得到的結果作爲數組

json_decode($json, true); 

如果沒有第二ARG傳遞真實,你會得到stdClass

object(stdClass)#1 (5) { 
    ["a"] => int(1) 
    ["b"] => int(2) 
}