Yii3 框架
之前写过一篇关于现代的 PHP 框架的文章:
今天来讲一下 Yii 框架的 3.0 版本
Yii3 这个版本改动相对于 Yii2 也是非常的巨大, 包括一下特性:
Yii3 需要 PHP 的最低版本是 7.1 并且 HHVM 不再被支持.
Yii3 将采用新的版本规则, 即 https://semver.org/ since 3.0 规则.
不再使用 Subtree-split 模式.
放弃使用 Yii 自己的 autoloader 改为用 Composer 的 autoloader.
框架的结构也进行了大量的调整, 分出来好几个包, 包括下面这些:
- yiisoft/yii-core - 这个是 Yii Framework .
- Yii 2.0 的开发还是在 yiisoft/yii2 仓库.
Yii2 只支持 Bug 和安全补丁, 新特性和加强的特性不在被接收.
- yiisoft/di - PSR-11 适应依赖注入的 container.
- yiisoft/log - PSR-3 适应 Psr-3 的 logging library.
- yiisoft/cache - PSR-16 适应 psr-16 的 caching library.
- yiisoft/db - 数据库的 abstraction and QueryBuilder.
- yiisoft/db-MySQL - MySQL 的 db 扩展.
- yiisoft/db-pgsql - PostgreSQL 的 db 扩展.
- yiisoft/db-SQLite - SQLite 的 db 扩展.
- yiisoft/db-mssql - MSSQL 的 db 扩展.
- yiisoft/db-oracle - Oracle 的 db 扩展.
- yiisoft/active-record - ActiveRecord 库.
- yiisoft/rbac - RBAC 库.
- yiisoft/view - 视图渲染库.
- yiisoft/yii-web - Web 扩展.
- yiisoft/yii-REST - REST API 扩展.
- yiisoft/yii-console - console 扩展.
- yiisoft/yii-jQuery - jQuery 扩展.
- yiisoft/yii-bootstrap3 - Bootstrap 3 扩展.
- yiisoft/yii-bootstrap4 - Bootstrap 4 扩展.
- yiisoft/yii-dataview - data displaying 扩展.
- yiisoft/yii-masked-input - Masked input field widget.
- yiisoft/yii-captcha - CAPTCHA 扩展.
更多的 PSR 兼容: PSR-3, PSR-11, PSR-16
框架核心只需要虚拟 PSR 实现包, 您可以自由选择日志记录器和缓存实现.
更多 PSR 实现的兼容性预计将在稍后实现.
从 Application and Module 删除 ServiceLocator , 采用 container 来替代.
数据库的扩展被分到几个 Composer 包里面.
删除 PJAX 的支持.
yiisoft/yii2-Composer 这个包不再被使用.
不再提供高级的项目模板. 项目模板也有所变化
yiisoft/yii-project-template - 工程模板;
yiisoft/yii-base-Web - Web 的基础应用模板.
变化总结
看到什么有很多的变化了, 在使用的时候也需要特别的注意, 现在 Yii3alpha 版本也还没有发布, 不过现在正在加紧 Yii3 的开发, 预计不久的将来就可以使用这个新的框架了.
这个框架最大的变化我认为是 分离了前端框架的依赖, 之前创建工程的时候还需要 各种的前端依赖包, 在 Yii3 中进行了彻底的分离.
image.PNG
我觉得这个是个好的变化, 如果需要引入前端框架, 就可以自己引入, 而不是强制引入一堆的前端框架.
让我们期待 Yii3 的到来吧.
来源: https://www.qcloud.com/developer/article/1349267