zoukankan      html  css  js  c++  java
  • **PHP错误Cannot use object of type stdClass as array in错误的

    错误:将PHP对象类型当做了PHP数组  解决方法:用对象操作符->

    今天在PHP输出一个二维数组的时候,出现了“Fatal error: Cannot use object of type stdClass as array in……”。

    这个二维数组是这样的:

    Array ( 


     [0] => stdClass Object
      [id] => 1 
      [title] => 首页招聘 
      [size] => 297*140 
      [pic] => ./upload/20130302093535.jpg 
      [state] => 0 ) 


     [1] => stdClass Object
      [id] => 2 
      [title] => 首页领队 
      [size] => 297*140 
      [pic] => ./upload/20130302093443.jpg 
      [state] => 0 ) 


     )

    输出开始写的方法是:$pic[0][title]

    结果就出现上面的错误。

    其实,数组中是返回的是一个对象,不能直接用[]来显示,正确的输出方法是:$pic[0]->title (不用加引号 )

    错误的:

    foreach($user_list as $user_key => $user_value){
    foreach ($data as $data_key => $data_value){
    if($user_list[$user_key]['user_mobile'] === $data_key){
    $user_list[$user_key]['contacts_username'] = $data_value;
    break;
    }
    }
    }

    正确:

    $user_list =$this->m_user->match_user_mobile($column_str, $mobile_array, $page_num, $page_size);
    //遍历$user_list,追加通讯录的用户名
    //遍历二维数组
    foreach($user_list as $user_key => $user_value){
    foreach ($data as $data_key => $data_value){
    if($user_list[$user_key]->user_mobile === $data_key){
    $user_list[$user_key]->contacts_username = $data_value;
    break;
    }
    }
    }

    --------------------------------------------
    public function match_user_mobile($column_str, $mobile_array,  $page_num, $page_size)
    {
    $this->db->select($column_str);
    $this->db->from('xm_user');
    $this->db->where_in('user_mobile', $mobile_array);
    //$this->db->limit(10, 20); 生成: LIMIT 20, 10 (仅限MySQL中。其它数据库有稍微不同的语法)
    $this->db->limit($page_size, ($page_num - 1)*$page_size);
    $query = $this->db->get();

    //var_dump($query); 测试
    //row_array取一行数据;result_array取多行数据,返回关联数组;result返回对象数组
    return $query->result_array();

    }
    总结:
    如果数据库用result返回,那么就是PHP对象数组,需要用对象操作符->
    如果是result_array返回,那么就是PHP关联数组,用[]即可
  • 相关阅读:
    线段树模板题 contest 线段树 T5
    Guide AHOI2017 洛谷P3720
    静态RMQ模板题 contest 静态RMQ T2
    树状数组模板题 P1904
    AC自动机模板题 P2017
    高精度排序模板题 P1110
    Trie树模板题 P2016
    树状数组套权值线段树
    爬山 启发式合并 / STL
    [POI2011]ROT-Tree Rotations 线段树合并|主席树 / 逆序对
  • 原文地址:https://www.cnblogs.com/kenshinobiy/p/4360917.html
Copyright © 2011-2022 走看看