2012-10-22 48 views
0
{ 
    "Group": [ 
    { 
     "name": "HolderOne", 
     "operators": [ 
      { 
      "username": "ken", 
      "status": 3 
      }, 
     .....etc..... 

我試圖操縱的JSON提要必須在上面進行格式化。操縱來自JSON提要的數據以顯示它

我希望能夠顯示用戶名和狀態。 (?)

$json = file_get_contents("urlhere"); 
$obj=json_decode($json); 
echo $obj->username; 
echo $obj->status; 

,因爲它們是嵌套在飼料中這顯然是行不通的。我曾嘗試:

$obj->Group[0]->name->operators->username 

$obj->Group[0]->name->username 

無濟於事(如以及json_decode,true和['name']等)。

我是否特別昏暗?

當我做了一個var轉儲,數據是從飼料收集好的。

+0

$ obj->集團[0] - >名稱 - >運營商[0] - >用戶名?看起來運營商也是一個對象數組... – kalpaitch

+0

你還嘗試過'print_r($ obj)'或'var_dump($ obj)'嗎? – Havelock

+0

嘗試使用$ obj-> Group [0] - > name-> operators [0] - > username –

回答

1

圖了這一點,最好的辦法就是反覆做print_r的:

print_r($obj) 
//prints what you see above 
print_r($obj['Group'] 
//prints the Group Object 
print_r($obj['Group'][0]) 
//prints first element in Group Object 
print_r($obj['Group'][0]['operators']) 
//etc..... 

這就是我如何找出如何,如果我得到一點點卡訪問這些元素。雖然在我看來,你想:

$obj->Group[0]->operators[0]->username

+0

乾杯.....如果我想獲取用戶名值並將其與可變值(例如,如果KEN = KEN,那麼...否則...),這是PHP還是JSON?即將print_r作爲方式?順便說一句 - 真的很感謝你的幫助,所以謝謝你! :0) – webservicesco

+0

'print_r'實際上對你的應用程序在生產中從未**有用,它只是用於開發,所以你可以看到各種變量中有什麼。 JSON只是一種存儲數據的格式,PHP是您編寫應用程序的語言,所以PHP就是您的答案。 – Landon

+0

感謝Landon - 除了'print_r'數據不outoutyt - 一個vardump的作品,但一個PHP'echo' doesn't ..額外複雜的事情,我想說如果一個特定的用戶名是X,顯示狀態 – webservicesco