使用foreach循环从stdClass对象中的stdClass对象获取值

时间:2015-09-15 13:40:11

标签: php

我有PHP对象类的以下部分:

stdClass Object ( 
[data] => Array ( 
[0] => stdClass Object ( 
[id] => 1194760 

.....

我正在尝试提取id的所有值。当我回显$cronJobUrlList->data[0]->id时,我确实得到了一个值,但仅限于第一个。当我尝试以下操作时,不会返回任何内容。

foreach ($cronJobUrlList->data as $data) {
    foreach ($data->id as $cronId) {
        echo $cronId;
    }
}

我想为每个条目获取id值。我之前从未使用过对象类。

3 个答案:

答案 0 :(得分:1)

您正在尝试访问数组索引中的对象。迭代数组后,每个实例都将返回一个对象,您只需要调用其属性,因此您不必再次迭代该值。

foreach ($cronJobUrlList->data as $data) {
    echo $data->id;
}

答案 1 :(得分:1)

试试这个

foreach ($cronJobUrlList->data as $key=> $data) {
       echo $data->id;
}

答案 2 :(得分:0)

我建议您使用json_encode()将对象转换为数组。

然后使用json_decode()进行解码。

从那里,您可以轻松获得id密钥。

second argument to json_decode强制JSON在关联数组中反序列化(如果它是真实的(默认情况下是假的)。

即,使用json_decode($json, true)

相关问题