2012-03-23 190 views
0

爲什麼不能正常工作?無法從數組中獲得價值

print_r($photo); 
echo $photo['type']; 

這是輸出:

Array (['type'] => newPhoto ['fileName'] => 133249963433.jpg) 

Notice: Undefined index: type in /path/to/Logic.php on line 153 
Notice: Trying to get property of non-object in /path/to/Logic.php on line 154 

這必須是如此簡單,但..?

編輯:

找到了解決辦法,但我不能發佈它作爲解決方案,因爲我沒有足夠的聲望點數。

這個數組是從php生成隱藏輸入的表單生成的。我叫這樣的輸入:

name="photos['.$uniqid.'][\'type\']" value="exisitingPhoto"> 
name="photos['.$uniqid.'][\'fileName\']" value="'.$photoTag['photoName'].'">` 

它是這樣的:

name="photos['.$uniqid.'][type]" value="exisitingPhoto"> 
name="photos['.$uniqid.'][fileName]" value="'.$photoTag['photoName'].'">` 

所以,反斜線和「」不允許在此。

謝謝大家的幫助!

+1

仔細檢查這是否是線154,我不認爲它是。 – 2012-03-23 11:17:28

+0

@羅克看起來好像沒什麼問題;我只是運行代碼... – 2012-03-23 11:20:20

+0

嘗試'echo $ photo [0] ['type']'。有時它可以工作。 – Narek 2012-03-23 11:21:28

回答

0

只是爲了調試的目的,請嘗試

$key = 'type'; 
print_r($photo); 
if (isset($photo[$key])) { 
    echo $photo[$key]; 
} 
else { 
    echo __FILE__, ':', __LINE__, ' $photo[$key] not set', "<br />\n"; 
}