ThinkPHP5.2第二个 Beta
测试版本发布了。这次主要改进了 fetchSql
方法的处理机制,统一和简化了很多查询用法。(安装和基本使用请 参考这里
)
主要更新
改进了fetchSql的解析机制
引入了单独的 Fetch
类单独处理 fetchSql
方法,确保 Query
类查询方法的返回类型不受 fetchSql
影响。
统一和精简了查询用法
本次测试版本统一和精简了很多查询用法,让你不会再有一个查询功能多种用法的困扰,便于制定团队规范。
-
get
/ all
查询方法统一为 find
/ select
方法;
-
取消 fetchPdo
方法,返回PDO对象统一使用 pdo
查询方法;
-
废弃 resultset_type
配置统一使用 fetchCollection
方法;
-
取消 readMaster
方法,统一使用 master
方法;
-
模型 save
方法不支持传入条件,统一查询和更新方法调用;
-
取消 db
/ model
助手函数,统一使用类调用;
增加了 fetchArray
方法
如果使用了模型查询,现在可以通过调用 fetchArray
方法,查询结果将始终返回数组数据。方便一些统计图表的数据传入。
时间字段写入改用 DateTime
类
时间字段的自动操作改用 DateTime
类,支持微秒级时间记录,提供更高精度的系统时间记录。
只需要设置数据表时间字段的小数位精度即可自动记录,如果需要输出微秒精度数据,设置 dateTimeFormat
格式即可。
模型增加 schema
属性
模型增加 schema
属性支持,用于定义对应数据表的字段及类型信息,并且支持使用 PHP 变量类型定义。定义了该属性后,无需使用 optimize:schema
即可提升查询性能,以及自动识别字段的参数绑定类型。
模型的 type
属性仅用于设置自动类型转换的数据表字段。
支持应用公共函数文件
多应用模式下,支持加载应用的公共函数文件。
多入口文件自动识别
如果没有在应用入口文件中指定应用名,入口文件访问的时候可以自动识别当前的应用名称。默认会取当前应用入口的文件名作为应用名。
部分方法不再支持
以下用法出于实用性或精简考虑不再支持:
-
Query
类的 fetchPdo
方法(可以使用 pdo
方法替代);
-
Query
类的 get
/ all
/ getOrFail
/ allOrFail
方法;
-
模型类的 save
方法不再支持 where
参数;
-
Query
类和模型类的 readMaster
方法,该方法在 swoole
下无法正常使用(需要的话手动调用 master
方法);
-
模型类的 setInc
和 setDec
方法;
-
数据库的 resultset_type
设置
(需要的话调用 fetchCollection
方法);
-
db
助手函数(使用 Db
类静态方法替代);
更新日志
-
改进 join
方法的 table
参数解析
-
废弃save方法的 where
参数
-
取消模型类的 setInc
和 setDec
方法
-
改进模型字段信息的获取
-
取消模型和Db类的 readMaster
方法
-
改进参数绑定类型获取
-
Query类增加 fetchArray
方法 支持模型查询返回数组类型
-
时间字段自动写入改为使用 DateTime
类,支持微秒数据
-
改进验证类 扩展验证规则的时候不检查是否require
-
改进查询CURD方法
-
修正模型输出
-
改进 update
方法
-
修正 insertGetId
方法
-
修正 getFieldType
方法
-
改进 think schema
指令
-
改进缓存和日志的路径获取
-
删除 db
助手函数 修正几个助手函数
-
Builder类 select
方法增加第二个参数
-
取消 resultset_type
设置
-
修正动态查询方法的 fetchsql
处理
-
改进多应用入口文件的自动识别
-
修正server方法的返回类型
-
多应用模式允许加载公共函数文件
-
修正路由类 getBind
方法
-
改进 session
配置参数
-
修正资源路由
-
改进 console
类
-
修正 make
指令
-
改进控制器 assign
方法
-
修正 COOKIE
类
-
修正 request
类
-
修正 console
调试驱动
-
取消Query类的 get
/ all
方法 统一使用 find
/ select
方法
-
取消 fetchPdo
方法
-
修正 insertall
的 limit
参数
-
改进严格模式下的错误
-
改进 fetchSql
方法 增加 Fetch
对象
以上所述就是小编给大家介绍的《ThinkPHP 发布 5.2 Beta2 版本——统一并精简大量用法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!