num_rows () не возвращает правильное число строк, когда результат не пуст

Я работаю над одним запросом Join в CodeIgniter. Запрос выполняется отлично. Проблема заключается в $query->num_rows() я пишу свой запрос на соединение.

 $this->db->select('related colums'); $this->db->from('table1 as t1'); $this->db->join('table2 as t2', 't1.id = t2.id', 'left outer'); $this->db->join('table3 as t3', 't1.id_second = t3.id', 'left outer'); $this->db->where('t1.column', $some_varibale); $this->db->order_by("t1.column", "desc"); $query = $this->db->get(); $query_result = $query->result_array(); $number_of_row = $query->num_rows(); // This line of code is not working properly. print_r($number_of_row); // To check result is empty or not. if(!empty($query_result)){ echo 'not empty'; } else { echo "empty"; } 

Проблема:

Когда я печатаю $number_of_row он дает мне 13, но когда я печатаю $query_result он покажет только одну строку, которая является правильным результатом (я дважды проверил ее), поэтому проблема в том, что я ожидал, что $query->num_rows() будет верните мне 1, если я получу только одну строку в результате.

У меня есть перекрестная проверка, когда я получаю пустой результат, тогда он будет показывать 0, как ожидалось. но, как описано выше, когда я получаю одну строку, результат будет показывать 13 чисел.

Я знаю count и он будет работать, но вопрос в том, почему этот $query->num_rows() работает некорректно?

Я не понял, что я делаю неправильно?

Related of "num_rows () не возвращает правильное число строк, когда результат не пуст"

Попробуй это:

 $number_of_row = $this->db->affected_rows(); 

дай мне знать, если это работает