thinkphp模型定义

发布时间 - 2020-05-28 00:00:00    点击率:

模型定义

一.定义模型

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.  模型操作与数据库操作返回的结果类型不同,数据库操作返回的结果是一个(二维)数组[ [ ] ],而模型操作返回的结果是一个结果集[ { } ]。

推荐教程:《TP5》


# 是一个  # 主键  # 都要  # 不需要  # 只需  # 要在  # 中也  # 类似于  # 配置文件  # 相匹配 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251811 】 【 AI营销90571


相关推荐: WEB开发之注册页面验证码倒计时代码的实现  QQ浏览器网页版登录入口 个人中心在线进入  如何彻底删除建站之星生成的Banner?  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  如何在宝塔面板中修改默认建站目录?  免费网站制作appp,免费制作app哪个平台好?  如何正确选择百度移动适配建站域名?  西安专业网站制作公司有哪些,陕西省建行官方网站?  JavaScript如何操作视频_媒体API怎么控制播放  常州企业网站制作公司,全国继续教育网怎么登录?  Python数据仓库与ETL构建实战_Airflow调度流程详解  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  如何实现javascript表单验证_正则表达式有哪些实用技巧  如何用狗爹虚拟主机快速搭建网站?  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  Firefox Developer Edition开发者版本入口  Laravel模型事件有哪些_Laravel Model Event生命周期详解  如何在阿里云虚拟主机上快速搭建个人网站?  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  Python文本处理实践_日志清洗解析【指导】  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  Linux系统命令中screen命令详解  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  利用JavaScript实现拖拽改变元素大小  Laravel怎么实现验证码(Captcha)功能  如何在阿里云高效完成企业建站全流程?  详解Oracle修改字段类型方法总结  Laravel如何使用Collections进行数据处理?(实用方法示例)  专业商城网站制作公司有哪些,pi商城官网是哪个?  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  Laravel怎么在Controller之外的地方验证数据  中国移动官方网站首页入口 中国移动官网网页登录  googleplay官方入口在哪里_Google Play官方商店快速入口指南  laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法  米侠浏览器网页背景异常怎么办 米侠显示修复  电商网站制作价格怎么算,网上拍卖流程以及规则?  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  Laravel如何自定义分页视图?(Pagination示例)  如何快速搭建虚拟主机网站?新手必看指南  详解jQuery停止动画——stop()方法的使用  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  jQuery validate插件功能与用法详解  什么是javascript作用域_全局和局部作用域有什么区别?  微信公众帐号开发教程之图文消息全攻略  Laravel如何实现事件和监听器?(Event & Listener实战)  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  高防服务器租用指南:配置选择与快速部署攻略