stdClass对象和数组如何使用php

use*_*009 5 php arrays object stdclass

我正在尝试获得此结构显示的十二个ID:

stdClass Object
(
    [checkins] => stdClass Object
        (
            [count] => 12
            [items] => Array
                (
                    [0] => stdClass Object
                        (

                            [venue] => stdClass Object
                                (
                                    [id] => 4564654646456
                                    .
                                    .
Run Code Online (Sandbox Code Playgroud)

我做:

$checkins = $fsObjUnAuth->get("/users/self/checkins");
$count = $checkins ->response->checkins->count;  // so I can  get 12

 for( $i = 0; $i < $count; $i ++)
  {
      $a1[] = $checkins['items'][$i]['venue']['id'];  //two tries
      $a2[] = $checkins ->response->checkins->items->$i->venue->id;
        echo $i; echo ": ";
        echo $a1;echo"<br>";
        echo $a2;echo"<br>"
  } 
Run Code Online (Sandbox Code Playgroud)

但我得到:致命错误:不能使用stdClass类型的对象作为数组行.

请有人告诉我该怎么做?

非常感谢

mea*_*gar 9

您无法通过数组下标运算符访问对象成员[].

你必须使用->运营商:

$x = new StdClass();

$x->member = 123;
Run Code Online (Sandbox Code Playgroud)

在你的情况下,你将不得不使用混合,因为你有一个object($checkins)与一个成员($items)是一个数组,其中包含其他对象.

$a1[] = $checkins->items[$i]->venue->id;
Run Code Online (Sandbox Code Playgroud)