sql >> Databasteknik >  >> RDS >> Mysql

CodeIgniter result_array() på booleskt fel om tabellen är tom

Du bör kontrollera om frågan fungerade/har några rader innan du försöker få resultaten. Om tabellen är tom kommer frågan inte att göra någonting.

$query = $this->db->get();

$data = array();
if($query !== FALSE && $query->num_rows() > 0){
    foreach ($query->result_array() as $row) {
        $data[] = $row;
    }
}

return $data;

P.S. Det finns ingen anledning att använda en loop över $query->result_array() , du kan bara lämna tillbaka det. Det är redan en rad rader.

$query = $this->db->get();

$data = array();
if($query !== FALSE && $query->num_rows() > 0){
    $data = $query->result_array();
}

return $data;


  1. skillnad mellan två på varandra följande rader i mysql

  2. SQL-fråga med avg och grupp efter

  3. Finns det något sätt att köra en fråga i strängvärdet (som eval) i PostgreSQL?

  4. Hur man tar reda på när en Oracle-tabell uppdaterades förra gången