【问题标题】:PHP How to output the array contentPHP如何输出数组内容
【发布时间】:2012-08-11 03:27:19
【问题描述】:

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

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

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

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

但我收到以下错误:

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

【问题讨论】:

  • 报错信息很清楚:"Cannot use object [...] as array [...]".

标签: php arrays stdclass


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

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

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

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

    我希望这会有所帮助!

    【讨论】:

      【解决方案3】:

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

      echo $post['post_id'];
      

      收件人:

      echo $post->post_id;
      

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多