ThinkPHP CURD方法的table方法也屬於模型類的連貫操作方法之一,該方法主要用於指定操作的數據表。
具體用法如下:
一般情況下,操作模型的時候系統能夠自動識別當前對應的數據表,所以,使用table方法的情況通常是為了:
1.切換操作的數據表;
2.對多表進行操作;
例如:
$Model->table('think_user')->where('status>1')->select();
也可以在table方法中指定數據庫,例如:
$Model->table('db_name.think_user')->where('status>1')->select();
需要注意的是table方法不會改變數據庫的連接,所以你要確保當前連接的用戶有權限操作相應的數據庫和數據表。
切換數據表後,系統會自動重新獲取切換後的數據表的字段緩存信息。
如果需要對多表進行操作,可以這樣使用:
$Model->field('user.name,role.title')->table('think_user user,think_role role')->limit(10)->select();
為了盡量避免和mysql的關鍵字沖突,可以建議使用數組方式定義,例如:
$Model->field('user.name,role.title')->table(array('think_user'=>'user','think_role'=>'role'))->limit(10)->select();