在 CodeIgniter 4 要做資料庫查詢,會建議不要直接使用他的 query,而是可以使用這個 Query Builder Class(查詢生成器類別),CodeIgniter 4 對其介紹如下:
你可以在 CodeIgniter 中使用查詢生成器類別。 這個模式可以讓你用少量的程式碼就完成資料檢索、新增和更新。 在某些範例下,只需要一兩行程式碼就能操作資料庫。 CodeIgniter 並沒有要求每個資料表都要有自己的類別檔。 這代表著它能提供更簡單的介面。
除了簡單之外,查詢生成器的另一個特色是建立獨立於資料庫的應用程式,因為查詢語法是由每個獨立的資料庫適配器所產生。 此外,因為系統會自動跳脫字元,這使你的查詢更安全。
$builder
使用的方法先是建立 builder:
$db = \Config\Database::connect(); $builder = $db->table('users');。
接著透過 $builder 查詢:
$builder = $db->table('mytable'); $query = $builder->get();
可以丟入 limit 以及 offset 設定選取範圍:
$query = $builder->get(10, 20);
getResult()
查詢出來的結果需要透過 getResult() 顯示:
$query = $builder->get(); foreach ($query->getResult() as $row) { echo $row->title; }
$builder->getWhere
透過 getWhere 可以比較簡單帶入條件:
$query = $builder->getWhere(['id' => $id], $limit, $offset);
$builder->select()
查詢帶入 select 語法
$builder->select('title, content, date'); $query = $builder->get();
以上為Query Builder Class(查詢生成器類別)基礎,更詳細可以參照官方文件說明。