2015-02-06 85 views
0

我試圖把Minecraft的名字變成UUID,它可以轉換成「名字歷史」。我有名稱 - > UUID部分,但名稱歷史記錄出現錯誤。數組而不是數組元素

運行這段代碼時,$ uuid變量包含一個包含所有UUID的數組,我嘗試將其轉換爲名稱歷史記錄 - 然後嘗試通過API運行所有UUID,並根據多少過去的名稱用戶有添加»圖標來表示更改。不幸的是,像這樣的東西的測試數據:

Foo 
Bar (changed to Baz) 

它輸出

Array | Array » Array | 

,而不是

Foo | Bar » Baz | 

它應該。我知道我可能將數組作爲對象,但我不知道我會在那裏做什麼,或者如何獲取元素。

(這裏是代碼)

$uuid_real = json_decode($uuid, TRUE); 
foreach($uuid_real as $uuid_totest){ 

$toadd = json_decode(file_get_contents('https://api.mojang.com/user/profiles/' . $uuid_totest['id'] . '/names'), TRUE); 
if(count($toadd)==1){ 
    $results .= $toadd['0'] . " | "; 
}elseif(count($toadd)==2){ 
    $results .= $toadd['0'] . " » " . $toadd['1'] . " | "; 
}elseif(count($toadd)==3){ 
    $results .= $toadd['0'] . " » " . $toadd['1'] . " » " . $toadd['2'] . " | "; 
} 

這裏的var_dump爲$一些當前在線用戶TOADD:

array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(10) "lottie1664" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(12) "wingmanfoutz" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(11) "bigfoot2991" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(13) "mrstampycat05" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(10) "MEHLAWLARZ" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(10) "metboy2002" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(10) "SILVERMAN2" 
    } 
} 
array(2) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(11) "salesman200" 
    } 
    [1]=> 
    array(2) { 
    ["name"]=> 
    string(8) "Quartzic" 
    ["changedToAt"]=> 
    int(1423055736000) 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(13) "MercenaryCrow" 
    } 
} 
array(1) { 
    [0]=> 
    array(1) { 
    ["name"]=> 
    string(8) "fishmeal" 
    } 
} 

回答

0

這是因爲$toadd[0]$toadd[1]$toadd[2]是數組不是字符串,請提供這裏var_dump($ toadd),我們可以幫你

編輯:

因此,大家可以看到有$toadd[x]在任何字符串,但數組看起來像這樣:

array(1) { 
    ["name"]=> 
    string(10) "lottie1664" 
    } 

所以修改代碼並使用:

$toadd[0]['name'] 
$toadd[1]['name'] 
$toadd[2]['name']