为了账号安全,请及时绑定邮箱和手机立即绑定

如何从数组中获取元素?

如何从数组中获取元素?

PHP
慕容森 2022-12-30 17:01:10
如何从中获取单个元素?array(1) { [0]=> object(stdClass)#3 (2) { ["id"]=> int(29595) ["image_id"]=> string(20) "eohsidatfx8wyw5ltzt6" } }我需要分开“image_id”。怎么做?我试过echo $result["image_id"]但它不起作用:Notice: Undefined index: image_id in C:\xampp\htdocs\IGDB\moje\index.php on line 53
查看完整描述

3 回答

?
守着星空守着你

TA贡献1799条经验 获得超8个赞

好的,我知道了。

$result3=array_column($result2, 'image_id');
echo $result3[0];


查看完整回答
反对 回复 2022-12-30
?
呼如林

TA贡献1798条经验 获得超3个赞

看来您的数组只直接包含object(stdClass)#3. 该对象本身是一个包含id和的数组image_id。你可以image_id通过做访问

echo $result[0]["image_id"];


查看完整回答
反对 回复 2022-12-30
?
RISEBY

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

        }

    }

}


查看完整回答
反对 回复 2022-12-30
  • 3 回答
  • 0 关注
  • 78 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信