0

函数返回以下类型的数组:

Array ( [0] => stdClass Object ( [post_id] => 48 

我想回显数组内容,所以我尝试使用以下 foreach 循环:

foreach ($posts as $post){
    echo $post['post_id'];
}

但我收到以下错误:

致命错误:不能使用 stdClass 类型的对象作为数组

4

3 回答 3

3

你有一个对象数组。所以,你需要改变:

echo $post['post_id'];

到:

echo $post->post_id;

现在,您正在打印对象属性post_id

于 2012-08-14T19:05:34.450 回答
2

如果您希望输出数组或对象信息以进行调试等操作,您可以执行以下操作:

echo '<pre>';
print_r($object);
echo '</pre>';

这应该适用于数组或对象。

另外,我相信 PHP 5 中的对象有一个“to_array”魔术方法,可以将对象转换为数据数组。

我希望这有帮助!

于 2012-08-14T19:09:45.133 回答
1

如果要出于调试目的输出,可以使用print_rvar_dump,它们对您的对象更详细。

于 2012-08-14T19:40:33.600 回答