随笔分类 -  ThinkPHP

摘要:一.模型搜索器 1. 搜索器是用于封装字段(或搜索标识)的查询表达式; 2. 一个搜索器对应模型的一个特殊方法,该方法为 public; 3. 方法名的命名规范为:searchFieldNameAttr(); 4. 举个例子,我们要封装一个邮箱字符模糊查询,然后封装一个时间限定查询; 5.Field 阅读全文
posted @ 2021-12-16 11:02 WhiteSpace 阅读(122) 评论(0) 推荐(0) 编辑
摘要:一.模型获取器 1. 获取器的作用是对模型实例的数据做出自动处理; 2. 一个获取器对应模型的一个特殊方法,该方法为 public; 3. 方法名的命名规范为:getFieldAttr(); 比如有UserModel中的 bid字段 getBidAttr() 4. 举个例子,数据库表示状态 stat 阅读全文
posted @ 2021-12-14 10:25 WhiteSpace 阅读(116) 评论(0) 推荐(0) 编辑
摘要:前边我们学过save() saveAll()来保存数据,此方法也可以修改数据 //使用 get()方法通过主键获取数据,然后通过 save()方法保存修改,返回布尔值; $user = UserModel::get(118); $user->username = '李黑'; $user->email 阅读全文
posted @ 2021-12-13 11:10 WhiteSpace 阅读(80) 评论(0) 推荐(0) 编辑
摘要:一.数据添加 1.使用实例化的方式添加一条数据,首先实例化方式如下,两种均可: class Test { //使用模型实例来添加数据 public function show(){ //实例化模型 $user =new users(); $user->bid="15"; $user->bname=" 阅读全文
posted @ 2021-09-23 10:29 WhiteSpace 阅读(135) 评论(0) 推荐(0) 编辑
摘要:一.定义模型 1.定义一个和数据库表向匹配的模型; class User extends Model 2.模型会自动对应数据表,并且有一套自己的命名规则; 3.模型类需要去除表前缀(tp_),采用驼峰式命名,并且首字母大写; tp_user(表名)=>User tp_user_type(表名)=>U 阅读全文
posted @ 2021-09-18 10:30 WhiteSpace 阅读(122) 评论(0) 推荐(0) 编辑
摘要:一.聚合查询 1.使用 count()方法,可以求出所查询数据的数量; Db::name('user')->count(); 2.count()可设置指定 id,比如有空值(Null)的 uid,不会计算数量; Db::name('user')->count('uid'); 3.使用 max()方法 阅读全文
posted @ 2021-09-14 15:39 WhiteSpace 阅读(52) 评论(0) 推荐(0) 编辑
摘要:说明,数据库的字段必须是datatime类型 字符串类型的不行 一、传统方式 1.可以使用>、<、>=、<=来筛选匹配时间的数据; Db::name('user')->where('create_time', '> time', '2018-1-1')->select(); 2.可以使用 betwe 阅读全文
posted @ 2021-09-09 11:11 WhiteSpace 阅读(413) 评论(0) 推荐(0) 编辑
摘要:本节课我们要学习查询中的几种查询方式:比较查询、区间查询、其它查询等 一.比较查询 1.在查询数据进行筛选时,我们采用 where()方法 public function show(){ //where 过滤函数 第二个参数默认是=,不写就是等于 $data=Db::table('user')->w 阅读全文
posted @ 2021-09-06 10:58 WhiteSpace 阅读(191) 评论(0) 推荐(0) 编辑
摘要:一.新增数据 1.使用 insert()方法可以向数据表添加一条数据; 如果你添加一个不存在的数据,会抛出一个异常 Exception; public function getModel(){ //定义数组数据文件 $date=[ "bname" => "杜伟" ]; //查询后返回的对象赋值给$u 阅读全文
posted @ 2021-08-25 16:14 WhiteSpace 阅读(74) 评论(0) 推荐(0) 编辑
摘要:一.查询规则 1.前面课程中我们通过指向符号“->”多次连续调用方法称为:链式查询; 2.当 Db::name('user')时,返回数据库对象,即可连缀数据库对应的方法; 3.而每次执行一个数据库查询方法时,比如 where(),还将返回数据库对象; 4.只要还是数据库对象,那么就可以一直使用指向 阅读全文
posted @ 2021-08-25 15:46 WhiteSpace 阅读(890) 评论(0) 推荐(0) 编辑
摘要:一.基本查询 以下采用的是模型Article 查询的,如果没有模型使用Db::table(完整的表名) 或Db::name(不用写前缀) 1.Db::table()中 table 必须指定完整数据表(包括前缀); 2.如果希望只查询一条数据,可以使用 find()方法; public functio 阅读全文
posted @ 2021-08-25 10:17 WhiteSpace 阅读(167) 评论(0) 推荐(0) 编辑
摘要:一.连接数据库 1.ThinkPHP 采用内置抽象层将不同的数据库操作进行封装处理; 2.数据抽象层基于 PDO 模式,无须针对不同的数据库编写相应的代码; 3.使用数据库的第一步,就是连接你的数据库; 4.在根目录的 config 下的 database.php 可以设置数据库连接信息; 5.大部 阅读全文
posted @ 2021-08-24 15:42 WhiteSpace 阅读(55) 评论(0) 推荐(0) 编辑
摘要:我们来了解一下控制器定义,包括风格、是否需要继承以及各式各样的输出方式 一.控制器定义 1.控制器,即 controller,控制器文件存放在 controller 目录下; 2.类名和文件名大小写保持一致,并采用驼峰式(首字母大写);use think\Controller;class Index 阅读全文
posted @ 2021-08-20 15:54 WhiteSpace 阅读(724) 评论(0) 推荐(0) 编辑
摘要:一.目录结构 1.ThinkPHP5.1 默认是多模块架构,也可以设置为单模块操作; 2.所有模块的命名空间以 app 这三个字母作为根命名空间(可通过环境变量更改); 3.手册摘入的结构列表: 4.模块下的类库文件命名空间统一为:app\模块名; 5.比如:app\index\controller 阅读全文
posted @ 2021-08-17 16:54 WhiteSpace 阅读(147) 评论(0) 推荐(0) 编辑
摘要:学习要点: 1.URL 解析 2.URL 模式 本节课我们来了解一下 ThinkPHP5.1 的架构体系,架构分为入口、URL、模块、命名 空间、容器和依赖注入、Facade、钩子和行为以及中间件,我们会根据课程进度来穿插讲 解,并不会按顺序来。 一.URL 解析 1.ThinkPHP 框架非常多的 阅读全文
posted @ 2021-08-16 16:00 WhiteSpace 阅读(147) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示