这篇文章给大家分享的是有关thinkphp模型如何定义的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
模型定义
一.定义模型
1. 定义一个与数据库相匹配的模型
class User extends Model{ }
2. 模型会自动对应数据表,模型类的命名规则是除去表前缀(例如:tp_)的数据表名称,采用驼峰法命名,并且首字母大写,例如:
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 app\test\model\User as UserModel;
3. 在模型定义中也可以在模型中设置其他表名:
protected $table = 'tp_other';
4. 模型同控制器一样也支持初始化,这里必须设置static静态方法,具体如下:
protected static function init() { //初始化内容 }
三.模型操作
1.模型操作与数据库操作一致,但是模型操作不需要指定表名,例如:
数据库操作:
Db::name('user')->all ();
模型操作:
User:all();
2. 模型操作与数据库操作返回的结果类型不同,数据库操作返回的结果是一个(二维)数组[ [ ] ],而模型操作返回的结果是一个结果集[ { } ]。
感谢各位的阅读!关于“thinkphp模型如何定义”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。