只读字段

模型

只读字段

【客服】小秋【客服】小秋 2021-03-25 08:03:06 620阅读 663赞
只读字段用来保护某些特殊的字段值不被更改,这个字段的值一旦写入,就无法更改。 要使用只读字段的功能,我们只需要在模型中定义readonly属性:namespace app\index\model;use think\Model;c
软删除

模型

软删除

【客服】小秋【客服】小秋 2021-03-25 08:02:31 1068阅读 887赞
软删除版本调整功能5.0.2deleteTime 属性改为非静态定义在实际项目中,对数据频繁使用删除操作会导致性能问题,软删除的作用就是把数据加上删除标记,而不是真正的删除,同时也便于需要的时候进行数据的恢复。要使用软删除功能,需要引入So
数组访问和转换

模型

数组访问和转换

【客服】小秋【客服】小秋 2021-03-25 07:59:20 1071阅读 949赞
数组访问版本新增功能5.0.10增加removeRelation方法去除所有的关联属性5.0.5hidden、visible和append方法支持关联属性5.0.4增加appendRelationAttr方法追加关联模型的属性模型对象支持数组方式访问
JSON序列化

模型

JSON序列化

【客服】小秋【客服】小秋 2021-03-25 07:58:47 1040阅读 526赞
版本新增功能5.0.10增加removeRelation方法去除所有的关联属性5.0.5hidden、visible和append方法支持关联属性5.0.4增加appendRelationAttr方法追加关联模型的属性可以调用模型的toJson方法进
事件

模型

事件

【客服】小秋【客服】小秋 2021-03-25 07:57:43 784阅读 637赞
模型事件版本新增功能5.0.4增加模型事件注册快捷方法模型事件是指在进行模型的写入操作的时候触发的操作行为,包括模型的save方法和delete方法。模型事件只可以在调用模型的方法才能生效,使用查询构造器通过Db类操作是无效的模型类支持before_
连接数据库

数据库

连接数据库

【客服】小秋【客服】小秋 2021-03-25 07:57:02 772阅读 599赞
ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。采用PDO方式,目前包含了Mysql、SqlServer、P
查询数据

数据库

查询数据

【客服】小秋【客服】小秋 2021-03-25 07:55:49 859阅读 855赞
基本查询查询一个数据使用:// table方法必须指定完整的数据表名Db::table('think_user')->where('id',1)->find();find 方法查询结果不存在,返回
添加数据

数据库

添加数据

【客服】小秋【客服】小秋 2021-03-25 07:55:12 674阅读 789赞
版本调整功能5.0.10insertAll方法支持replace参数5.0.5添加data/inc/dec/exp方法设置数据添加一条数据使用 Db 类的 insert 方法向数据库提交数据$data 
更新数据

数据库

更新数据

【客服】小秋【客服】小秋 2021-03-25 07:54:36 833阅读 844赞
版本调整功能5.0.5添加data/inc/dec/exp方法设置数据更新数据表中的数据Db::table('think_user')->where('id', 1)->update(['
查询语法

数据库

查询语法

【客服】小秋【客服】小秋 2021-03-25 07:53:00 796阅读 958赞
查询表达式版本新增功能5.0.9比较运算增加闭包子查询支持5.0.4支持对同一个字段多次调用查询方法查询表达式支持大部分的SQL查询语法,也是ThinkPHP查询语言的精髓,查询表达式的使用格式:where('字段名','表达
链式操作

数据库

链式操作

【客服】小秋【客服】小秋 2021-03-25 07:52:16 1030阅读 977赞
数据库提供的链式操作方法,可以有效的提高数据存取的代码清晰度和开发效率,并且支持所有的CURD操作。使用也比较简单,假如我们现在要查询一个User表的满足状态为1的前10条记录,并希望按照用户的创建时间排序 ,代码如下:Db::table('
where

数据库

where

【客服】小秋【客服】小秋 2021-03-25 07:51:46 571阅读 504赞
where方法的用法是ThinkPHP查询语言的精髓,也是ThinkPHP ORM的重要组成部分和亮点所在,可以完成包括普通查询、表达式查询、快捷查询、区间查询、组合查询在内的查询操作。where方法的参数支持字符串和数组,虽然也可以使用对象但并不建
field

数据库

field

【客服】小秋【客服】小秋 2021-03-25 07:49:43 947阅读 549赞
field方法属于模型的连贯操作方法之一,主要目的是标识要返回或者操作的字段,可以用于查询和写入操作。用于查询指定字段在查询操作中field方法是使用最频繁的。Db::table('think_user')->field(
lock

数据库

lock

【客服】小秋【客服】小秋 2021-03-25 07:43:03 913阅读 762赞
Lock方法是用于数据库的锁机制,如果在查询或者执行操作的时候使用:Db::name('user')->where('id',1)->lock(true)->find();就会自动在生成的SQL语句最
bind

数据库

bind

【客服】小秋【客服】小秋 2021-03-25 07:39:10 683阅读 664赞
bind方法用于手动参数绑定,大多数情况,无需进行手动绑定,系统会在查询和写入数据的时候自动使用参数绑定。bind方法用法如下:// 用于查询Db::table('think_user')->where('id
failException

数据库

failException

【客服】小秋【客服】小秋 2021-03-25 07:16:36 826阅读 821赞
failException设置查询数据为空时是否需要抛出异常,如果不传入任何参数,默认为开启,用于select和find方法,例如:// 数据不存在的话直接抛出异常Db::name('blog')->where([&#
聚合查询

数据库

聚合查询

【客服】小秋【客服】小秋 2021-03-25 07:14:26 745阅读 593赞
版本功能调整5.0.14max和min方法增加第二个参数用于设置是否强制转换数字在应用中我们经常会用到一些统计数据,例如当前所有(或者满足某些条件)的用户数、所有用户的最大积分、用户的平均成绩等等,ThinkPHP为这些统计操作提供了一系列的内置方法
高级查询

数据库

高级查询

【客服】小秋【客服】小秋 2021-03-25 07:12:59 870阅读 919赞
快捷查询快捷查询方式是一种多字段相同查询条件的简化写法,可以进一步简化查询条件的写法,在多个字段之间用|分割表示OR查询,用&分割表示AND查询,可以实现下面的查询,例如:Db::table('think_user') &n
视图查询

数据库

视图查询

【客服】小秋【客服】小秋 2021-03-25 07:09:38 840阅读 890赞
视图查询可以实现不依赖数据库视图的多表查询,并不需要数据库支持视图,例如:Db::view('User','id,name')    ->view('Profile
查询事件

数据库

查询事件

【客服】小秋【客服】小秋 2021-03-25 07:06:26 892阅读 621赞
查询事件(V5.0.4+)从5.0.4+版本开始,增加了数据库的CURD操作事件支持,包括:事件描述before_selectselect查询前回调before_findfind查询前回调after_insertinsert操作成功后回调after_