codeigniter 3 get_where sql查询功能

时间:2017-01-26 18:29:41

标签: php mysql arrays codeigniter mysqli

有这个查询,

$acc = $this->db->get_where('accounts', array('username' => $username), 1);

我遇到的问题是,每当我尝试回复它(通过print_r)时,这就是结果,为什么它会返回一个对象?

CI_DB_mysqli_result Object ( 
    [conn_id] => mysqli Object ( 
        [affected_rows] => 1 
        [client_info] => mysqlnd 5.0.11-dev - 20120503 - $Id: 76b08b24596e12d4553bd41fc93cccd5bac2fe7a $ 
        [client_version] => 50011 
        [connect_errno] => 0 
        [connect_error] => 
        [errno] => 0 
        [error] => 
        [error_list] => Array ( ) 
        [field_count] => 5 
        [host_info] => localhost via TCP/IP 
        [info] => 
        [insert_id] => 0 
        [server_info] => 5.7.14 
        [server_version] => 50714 
        [stat] => Uptime: 16045 Threads: 3 Questions: 382 Slow queries: 0 Opens: 121 Flush tables: 1 Open tables: 114 Queries per second avg: 0.023 
        [sqlstate] => 00000 
        [protocol_version] => 10 
        [thread_id] => 3 
        [warning_count] => 0 
    ) 
    [result_id] => mysqli_result Object ( 
        [current_field] => 0 
        [field_count] => 5
        [lengths] => 
        [num_rows] => 1 
        [type] => 0 
    ) 
    [result_array] => Array ( ) 
    [result_object] => Array ( ) 
    [custom_result_object] => Array ( ) 
    [current_row] => 0 
    [num_rows] => 
    [row_data] => 
)

它不应该返回值数组吗?

https://www.codeigniter.com/userguide2/database/active_record.html#select

它没有显示,所以我只是假设活动记录类中的任何查询都会返回值。

1 个答案:

答案 0 :(得分:1)

$acc = $this->db->get_where('accounts', array('username' => $username), 1)->result();

$acc = $this->db->get_where('accounts', array('username' => $username), 1)->result_array();

您打印了查询构建器对象,其中包含了mysql结果对象。