ThinkPHP V5.0.2版本发布——1024程序员节的祝福

ThinkPHP V5.0.2版本发布,祝TPer程序员节快乐,事业顺利,身体健康^_^

ThinkPHP V5.0——为API开发而设计的高性能框架

V5.0版本由七牛云独家赞助发布

ThinkPHP5.0版本是一个颠覆和重构版本,官方团队历时十月,倾注了大量的时间和精力,采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持composer,并针对API开发做了大量的优化,包括路由、日志、异常、模型、数据库、模板引擎和验证等模块都已经重构,不适合原有3.2项目的升级,请慎重考虑商业项目升级,但绝对是新项目的首选(无论是WEB还是API开发)。

V5.0.2版本修正了一些社区反馈的问题,并完善了路由和模型。

主要调整

数据库和模型完善;
路由功能完善;
增加yaml配置格式支持;
依赖注入完善;
Session类完善;
Cookie类完善;
Validate类完善;
支持反射类的异常捕获;

1024程序员节福利:官方教程系列限时特价10.24 仅此一天
包括 《ThinkPHP5.0快速入门》和最新上架的 《ThinkPHP5.0路由完全指南

支持ThinkPHP5的用户请到 Github 给我们一个`star` ^_^

从V5.0.1升级到V5.0.2

从V5.0.1升级到V5.0.2需要注意如下事项:

模型和软删除的下列属性和方法由原来的静态(static)定义改为动态定义:

聚合模型的relationModel属性;
模型类的useGlobalScope属性;
软删除属性 deleteTime属性;
模型类全局查询范围方法base改为动态方法;

原来的join方法和view方法的第一个参数规范化,支持下面三种用法:

用法一:[ ‘带前缀表名’=>’别名’ ]

用法二:’带前缀表名 别名’

用法三:’不带前缀的表名’

如果有其它用法注意调整,下面的用法不再支持:

‘不带前缀表名 别名’

版本更新日志

V5.0.2版本相对于5.0.1版本,更新如下:

[ 请求和路由 ]

依赖注入的类如果定义了invoke方法则自动调用
Request类的header方法增加自定义header支持
Request类禁止直接实例化调用
改进Request类ip方法
路由变量规则支持闭包定义
路由参数增加ajax和pjax判断
别名路由增加允许和排除操作
改进路由域名绑定后的url生成
路由生成改进对路由到类的支持
路由生成支持url_param_type配置参数
路由生成支持别名路由
Route重定向规则支持更多schema
别名路由支持定义单独方法的请求类型
改进路由分组的url生成
路由规则的组合变量支持可选分隔符定义
改进路由合并参数的获取
路由规则支持单独设置url分隔符,路由参数为 param_depr
自动搜索控制器支持自定义访问控制器层的情况
改进路由标识不区分大小写
改进路由地址是否定义过路由规则的检测

[ 数据库和模型 ]

改进Query类的join方法
改进Query类分页方法的参数绑定
修正软删除方法
修正Query类parseOrder方法一处错误
修正Query类setInc和setDec方法
改进Model类的save方法支持非自增主键的处理
整型字段的参数绑定如果为空写入默认值0
改进Model类has和hasWhere方法
改进Query类的value方法缓存判断
改进Query类join方法对子查询支持
改进Query类的table方法和alias方法用法
关联预载入支持hasOne自关联
改进Builder类的parseKey方法
改进Builder类的join/alias/table方法的解析
改进全局查询范围
改进Query类的聚合查询方法的返回值
改进聚合模型主键和关联键相同的情况
改进模型在开启class_suffix参数情况下的name属性的识别

[ 其它 ]

Cache类增加remember方法 用于当获取的缓存不存在的时候自动写入
Session类增加flash方法用于设置下一次请求有效的值
Session类增加flush方法用于清空当前请求有效的值
Session类增加push方法用于更新数组数据
增加yaml配置格式支持
改进App类的反射异常无法捕获问题
修正session助手函数的清空操作
改进验证类的image方法
改进验证类的activeUrl方法
改进自定义验证规则的使用
改进控制器自动搜索后的控制器名获取
修正import方法加载extend目录类库
修正json_encode时 “Failed calling XXX::jsonSerialize()” 的异常
改进Loader类model和validate方法的单例问题
改进方法执行的日志记录
改进模板引擎的Think变量解析
改进Lang类load方法
验证错误信息支持多语言读取
改进ROOT_PATH常量
改进语言包加载
改进模板session和cookie变量获取,自动判断前缀
缓存驱动统一增加handler方法用于获取操作对象的句柄(某些缓存类型可能为null)
File类增加__call方法用于兼容5.0版本的md5和 sha1方法
改进文件缓存驱动的clear方法
Lang类增加setLangCookieExpire方法设置多语言cookie过期时间
增加route_complete_match配置参数

[ 文档 ]

官方开发手册已经同步更新到V5.0.2版本

[ 5.0完全开发手册 | 5.0快速入门 |
5.0路由完全指南 ]

 

[ 下载地址 ]

官网:核心包
GitHub: https://github.com/top-think/think.git (主要维护仓库 官方核心团队)
Composer: composer create-project topthink/think tp5 –prefer-dist

[ 扩展包 ]

下面是针对ThinkPHP5的扩展包 需要使用Composer安装
应用单元测试:https://github.com/top-think/think-testing.git
验证码:https://github.com/top-think/think-captcha.git
图像处理:https://github.com/top-think/think-image.git
队列:https://github.com/top-think/think-queue.git
MongoDb支持:https://github.com/top-think/think-mongo.git
angular模板引擎:https://github.com/top-think/think-angular.git
助手库:https://github.com/top-think/think-helper.git
数据库迁移工具:https://github.com/top-think/think-migration.git

通过支付宝捐赠支持我们:

2016年10月24日
ThinkPHP官方团队

bobo

作者: bobo

坚持做自己喜欢的事情!不断学习,磨炼自己,走向成功!

发表评论