模型定義
一.定義模型
1. 定義一個與數據庫相匹配的模型
class?User?extends?Model{ }
2. 模型會自動對應數據表,模型類的命名規則是除去表前綴(例如:tp_)的數據表名稱,采用駝峰法命名,并且首字母大寫,例如:
立即學習“PHP免費學習筆記(深入)”;
tp_user(表名)?????? ?=>???????? User(模型名)
tp_user_type(表名)? ??=>??????? UserType(模型名)
3. 如果擔心模型的名稱和PHP關鍵字沖突,可以啟用類后綴功能,只需要在應用配置文件app.php中設置:
????//?開啟應用類庫后綴 ????'class_suffix'???????????=>?true,
4. 設置完畢后,所有的控制器名與類名都要加上Controller與Model,例如:
Class UserModel
Class UserController
二.模型設置
1. 默認主鍵是id,如果想設置其他主鍵,類似于uid:
protected?$pk?=?'uid';
2. 在控制器調用模型的時候,如果控制器類名與模型名重復,可以設置別名:
use apptestmodelUser as UserModel;
3. 在模型定義中也可以在模型中設置其他表名:
protected?$table?=?'tp_other';
4. 模型同控制器一樣也支持初始化,這里必須設置static靜態方法,具體如下:
????protected?static?function?init() ????{ ????????//初始化內容 ?????}
三.模型操作
1.模型操作與數據庫操作一致,但是模型操作不需要指定表名,例如:
數據庫操作:
Db::name('user')->all?();
模型操作:
User:all();
2.? 模型操作與數據庫操作返回的結果類型不同,數據庫操作返回的結果是一個(二維)數組[ [ ] ],而模型操作返回的結果是一個結果集[ { } ]。
推薦教程:《TP5》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END