CodeIgniter 裡面本來就有一個語法可以取得資料庫的欄位資訊,它的語法如下:
// 先取的所有table
$tables = $this->db->list_tables();// 再依序每個table取的欄位資訊
$fields = $this->db->field_data(‘table_name’);
foreach ($fields as $field)
{
echo $field->name;
echo $field->type;
echo $field->max_length;
echo $field->primary_key;
}
不過如果想要取的編碼(Collation)、權限(Privileges)、註解(Comment)這些欄位,就必須修改一下,以下用 mysql 為主介紹改法:
Setp.1
開啟:system/database/drivers/mysql/mysql_driver.php
找到:function _field_data($table)
修改:
- 將原本的語法註解掉 //return “DESCRIBE “.$table;
- 新增新語法 return “SHOW FULL FIELDS FROM “.$this->database.”.”.$table;
Step.2
開啟:system/database/drivers/mysql/mysql_result.php
找到:function field_data()
新增幾個語法:
$F->Null = $field->Null;
$F->Comment = $field->Comment;
$F->Collation = $field->Collation;
$F->Privileges =$field->Privileges;
這樣子就可以多這些懶位資訊可以運用了
你或許會想要看:
- Codeigniter 使用 mysqli 無法備份資料庫
- VPS 主機,在Centos7上安裝 Linux+Nginx+MySQL+PHP 環境安裝
- DigitalOcean 主機,安裝 HHVM、Nginx、Mysql 在 Ubuntu 14.04 上
- 單一個wordpress網站使用多個網址
- [CodeIgniter] 錯誤訊息 Undefined index: REMOTE_ADDR
- [wordpress] 取的某分類頁面的term_id
- [教學] ckeditor 4.3 開啟上傳圖檔與瀏覽檔案功能
- [wordpress] 製作像 bootstrap 樣式的導航條、工具列
- [wordpress] register_taxonomy 自定新的分類
- [wordpress] 取的文章內容的第一張圖語法