[CodeIgniter]get_table_names_by_dbname
$this->db->list_tables();
上記だとキャッシュから取得する。キャッシュを回避する場合下記を使用。
public function get_table_names_by_dbname($dbname) { $names = array(); $sql = "SHOW TABLES FROM {$dbname}"; $query = $this->db->query($sql); foreach ($query->result_array() as $row) { if ( ! isset($key)) { if (isset($row['table_name'])) { $key = 'table_name'; } elseif (isset($row['TABLE_NAME'])) { $key = 'TABLE_NAME'; } else { $key = array_keys($row); $key = array_shift($key); } } $names[] = $row[$key]; } return $names; }