【问题标题】:foreach array errorforeach 数组错误
【发布时间】:2012-04-29 12:16:18
【问题描述】:

我已经编码了

foreach($DB->query($query) as $row){
print_r($row);

结果为

 stdClass Object ( [follow_date] => 2012-04-17 [status] => 1 [user_id] => 8 ) stdClass Object ( [follow_date] => 2012-04-17 [status] => 2 [user_id] => 9 ) 

但是当我打电话给print_r($row[follow_date]);时,它给出错误

致命错误:无法在第 34 行的 /homereports/bespoke_dialing_status.php 中使用 stdClass 类型的对象作为数组

谁能告诉我是什么问题?

【问题讨论】:

  • 同一个 print_r($row[follow_date]);
  • 嗨,当我写 echo $status = $row->status; 时,那很好,但是当我写 echo ' ' 时。 $user_id 。 ' ' 。 get_status_by_id($status) 。 ' ' 。 $follow_date 。 ' ' ;它给出了错误可捕获的致命错误:第 44 行的 /home/reports/bespoke_dialing_status.php 中的对象无法转换为字符串 第 44 行是 }
  • print_r(get_status_by_id($status)); 返回什么?如果它是一个对象,请使用以下内容选择适当的属性:get_status_by_id($status)->thePropertyYouWant

标签: php mysql


【解决方案1】:

使用:$row->follow_date 访问内容。

【讨论】:

    【解决方案2】:

    答案在错误中,你试图将stdClass用作数组,这是不可能的。

    由于$rowstdClass,您需要使用另一种语法来检索日期。

    $date = $row->follow_date;
    

    这应该会给你想要的结果。

    【讨论】:

      【解决方案3】:

      我没有办法检查但我记得在类似的事情上使用过$row->follow_date

      【讨论】:

        猜你喜欢
        • 2018-09-22
        • 2012-06-11
        • 1970-01-01
        • 1970-01-01
        • 2016-06-28
        • 2020-09-12
        • 2016-03-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多