【问题标题】:Query returning bad array codigniter查询返回错误数组codeigniter
【发布时间】:2018-10-16 05:24:53
【问题描述】:

我正在尝试从 db 获取数据 这是查询

     public function updating($id)
    {
        $uquery=$this->db->query(' SELECT * FROM `form` WHERE id='.$id);
        print_r($uquery);
        //return $request_data;

    }

但是它不是返回一个数组而是返回这个:

CI_DB_mysqli_result Object ( [conn_id] => mysqli Object ( [affected_rows] => 1 [client_info] => mysqlnd 5.0.12-dev - 20150407 - $Id: 241ae00989d1995ffcbbf63d579943635faf9972 $ [client_version] => 50012 [connect_errno] => 0 [connect_error] => [errno] => 0 [error] => [error_list] => Array ( ) [field_count] => 6 [host_info] => localhost via TCP/IP [info] => [insert_id] => 0 [server_info] => 5.5.5-10.1.16-MariaDB [server_version] => 50505 [stat] => Uptime: 250329 Threads: 1 Questions: 4886 Slow queries: 0 Opens: 40 Flush tables: 1 Open tables: 29 Queries per second avg: 0.019 [sqlstate] => 00000 [protocol_version] => 10 [thread_id] => 353 [warning_count] => 0 ) [result_id] => mysqli_result Object ( [current_field] => 0 [field_count] => 6 [lengths] => [num_rows] => 1 [type] => 0 ) [result_array] => Array ( ) [result_object] => Array ( ) [custom_result_object] => Array ( ) [current_row] => 0 [num_rows] => [row_data] => )

为什么会出现这个字符串?

【问题讨论】:

  • 使用 ->result_array() 或 ->result()

标签: php mysql frameworks codeigniter-2


【解决方案1】:

使用 result_array();

public function updating($id)
    {
        $uquery=$this->db->query(' SELECT * FROM `form` WHERE id='.$id);
        $array =$uquery->result_array();
        print_r($array);


    }

【讨论】:

  • 你能告诉我发生了什么吗?为什么它会返回这个字符串?
  • 因为不是数组所以是Mysql结果对象
  • 如果您的匹配 id 一直只返回一个数据,请使用 row 方法。 result 和 result_array 总是以数组格式返回,就像如果您只有一条响应记录,它将返回数组 [0] 上的数据而不是数组。
【解决方案2】:

你必须使用

  1) ->result_array() to get result data in array format
  2) ->result() to get result data in object format
  3) ->row() to get single result data in object format
  4) ->row_array() to get single result data in array format

  e.g    $data = $this->db->query(' SELECT * FROM `form` WHERE id='.$id)->result_array();

谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多