简体   繁体   中英

Codeigniter query doesn't return my selected rows

I'm a beginner in using codeigniter. I am wondering why my query returns something like this when i tried to var dump it. Here is the result:

array(2) { ["method"]=> string(14) "read_my_mesage" ["mesasge_deatail"]=> object(CI_DB_mysqli_result)#30 (8) { ["conn_id"]=> object(mysqli)#16 (18) { ["affected_rows"]=> int(1) ["client_info"]=> string(13) "mysqlnd 7.4.4" ["client_version"]=> int(70404) ["connect_errno"]=> int(0) ["connect_error"]=> NULL ["errno"]=> int(0) ["error"]=> string(0) "" ["error_list"]=> array(0) { } ["field_count"]=> int(7) ["host_info"]=> string(20) "localhost via TCP/IP" ["info"]=> NULL ["insert_id"]=> int(0) ["server_info"]=> string(21) "5.5.5-10.4.11-MariaDB" ["server_version"]=> int(100411) ["sqlstate"]=> string(5) "00000" ["protocol_version"]=> int(10) ["thread_id"]=> int(482) ["warning_count"]=> int(0) } ["result_id"]=> object(mysqli_result)#31 (5) { ["current_field"]=> int(0) ["field_count"]=> int(7) ["lengths"]=> NULL ["num_rows"]=> int(1) ["type"]=> int(0) } ["result_array"]=> array(0) { } ["result_object"]=> array(0) { } ["custom_result_object"]=> array(0) { } ["current_row"]=> int(0) ["num_rows"]=> NULL ["row_data"]=> NULL } } 

How can i see my actual selected query tables? Here is my query

public function test_query() {
   $this->db->select('message_tbl.message,message_sent.from_id,message_received.read,message_tbl.id,message_received.to_id,message_tbl.parent_msg,message_tbl.date');    
            $this->db->from('message_tbl');
            $this->db->join('message_received', 'message_received.msg_id = message_tbl.id');
            $this->db->join('message_sent', 'message_sent.msg_id = message_tbl.id');
            $this->db->where('message_received.delete_status',0);
            $query = $this->db->get();

     $data = array(
           'method' => 'read_my_mesage',
           'mesasge_deatail' => $query
     );
     var_dump($data);
}

If you're using Codeigniter 3:

$query = $this->db->select('column1,column2')->from('table')->get();
print_r($query->result());

Ref: https://codeigniter.com/userguide3/database/query_builder.html


If you're using Codeigniter 4:

We'll need to use $query->getResult() instead

$query = $builder->get();

foreach ($query->getResult() as $row)
{
        echo $row->title;
}

Ref: https://codeigniter.com/user_guide/database/query_builder.html

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM