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

为了追求更简单的开发,我们一直在努力! V5.0.1 版本修正了一些社区反馈的问题,虽然只是个小版本更新,但增加了一些令人愉悦的新特性。
[ 更新 ]
主要调整:
- 依赖注入完善;
- 扩展配置文件位置调整;
- 新增数据表字段缓存命令;
- 支持设置当前的查询对象;
- 支持请求和路由缓存;
相对于 5.0 版本,更新日志如下:
[ 请求和路由 ]
- 改进 Controller 类的
success和error方法的跳转地址识别 支持更多 Scheme - 操作方法和架构方法支持任何对象自动注入
- Requesst 类增加
getInput方法 用于获取php://input值 - 路由到方法的时候 支持架构方法注入请求对象
- 改进 Route 类路由到类的判断
- Request 增加
cache方法,支持请求缓存 - 绑定到模块后 路由依然优先检查
- 路由增加请求缓存参数
- 修正路由组合变量的可选变量的 BUG
[ 数据库 ]
- 修正
pgsql数据库驱动的数据表字段信息读取 - 改进 Query 类的
view方法 第二个参数默认值更改为 true 获取全部的字段 - 数据库配置信息增加
query参数用于配置查询对象名称 - 型类增加
query属性用于配置模型需要的查询对象名称 - 改进数据表字段缓存读取
- 改进数据表字段缓存生成 模型为抽象类或者 没有继承 Model 类 不生成字段缓存
- 改进模型的字段缓存 虚拟模型不生成字段缓存
- 改进数据表字段缓存生成 支持读取模块的模型生成
- 改进聚合模型的
save方法 主键写入 - 模型类的 field 属性定义简化 取消
Query类的allowField和setFieldType方法及相关属性 - 改进数据表字段缓存生成 支持生成多个数据库的
- 更新数据库驱动类 改进
getTables方法 - 增加
optimize:schema命令 用于生成数据表字段信息缓存 - 修正一个查询条件多个条件的时候的参数绑定 BUG
- 分页查询方法
paginate第二个参数传入数字表示总记录数 - 修正 mysql 的
JSON字段查询 - 改进 Query 类的 getOptions 方法 当 name 参数不存在的时候返回 null
[ 模型和关联 ]
- 模型类的 field 属性不需要添加字段类型定义
- 改进 Model 类 添加
getDb静态方法获取 db 查询对象 - 改进聚合模型
save方法返回值 - 改进 Relation 类
save方法 - 修正关联模型 多对多
save方法一处问题 - 改进 Model 类的 save 方法 修正不按主键查询的更新问题
- 时间字段获取器获取的时候为 NULL 则不做转换
[ 其它 ]
- 改进配置缓存生成 支持扩展配置
- 取消
extra_config_list配置参数 扩展配置文件直接放到extra目录下面即可自动加载(数据库配置文件位置不变) - cache 助手函数支持判断缓存是否有效
- 修正 模板引擎驱动类的
config方法 - 修复在配置 Model 属性 field=true 情况下,通过
__call调用 db()引发的 BUG - 改进模板引擎驱动的 config 方法 支持获取配置参数值
- 改进 redirct 的 url 地址解析
- 删除
File类的md5和sha1方法 改为hash方法 支持更多的散列值类型生成 - 增加
response_end行为标签 - 改进默认语言的加载
[ 文档 ]
官方手册已经同步更新到 V5.0.1 版本
[ 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 年 9 月 28 日 ThinkPHP 官方团队