3 回答

TA貢獻1798條經驗 獲得超3個贊
看來您的數組只直接包含object(stdClass)#3
. 該對象本身是一個包含id
和的數組image_id
。你可以image_id
通過做訪問
echo $result[0]["image_id"];

TA貢獻1856條經驗 獲得超5個贊
$myArray = array(
'#3' => array (
"id"=> 29595,
"image_id"=> "eohsidatfx8wyw5ltzt6"
)
);
你要找的是你的陣列的第二級。使用 foreach 循環迭代數組鍵/值對。
foreach($myArray as $value){
foreach($value as $key => $id){
if($key === 'image_id'){
$output = $id;// output now holds the vlaue of the key set with 'image_id'
}
}
}
如果您知道密鑰的值,您還可以通過使用密鑰來訪問它,如下所示:$arrayname['firstlevelkey']['secondlevelkey'];
Notice: Undefined index: image_id in C:\xampp\htdocs\IGDB\moje\index.php on line 53
-->這是因為您正在定義一個數組,其中包含一個數組中不存在的鍵
echo $result["image_id"]--> 這里你告訴 php “image_id”在數組的第一層,然而,它看起來嵌套在你試圖解析的數組的第二層。$result['#3']['image_id']。
如果您不確定,is_array()如果第一個是包含子數組的鍵值,則使用 編寫一個條件查找第一個數組。然后再次運行 foreach 循環以查找鍵/對值。
foreach($arr as $values){
// do something if value is string
if(is_array($values){
foreach($values as $key => $value){
// check your second level $key/$value
}
}
}
- 3 回答
- 0 關注
- 130 瀏覽
添加回答
舉報