CakePHP 3.0.0-beta1 发布
CakePHP 核心团队很高兴宣布 CakePHP 3.0.0 的第一个 beta 版本。
CakePHP 核心团队很高兴宣布 CakePHP 3.0.0 的第一个 beta 版本。在 3.0.0-alpha2 发布后的几周内,我们一直在努力将社区反馈纳入新版本,并完成剩余的更改,这些更改将以显著的方式破坏兼容性。
自 3.0.0-alpha2 以来发生的重大更改
自 3.0.0-alpha2 发布以来,已经进行了多项更改,这些更改将破坏与现有应用程序的兼容性。
I18n 已经重新实现
基于 ext/intl 和 Aura/Intl 的新本地化子系统提供了更强大的替换语法,并保留了向后兼容的基于 sprintf() 的格式化程序。请参阅 新的 i18n 文档 获取更多信息。L10n 类已被删除。
NumberHelper 现在使用 intl
Number 库和 NumberHelper 现在在内部使用 intl 来格式化货币和值。这使得 NumberHelper 完全了解应用程序的当前语言环境。addFormat() 方法已被删除。
目录布局更改
对 CakePHP 应用程序的目录布局进行了更多更改
- src/Config 现在是 /config。
- src/bootstrap.php 现在是 /config/bootstrap.php。
- 日志文件现在默认位于顶级目录中。将它们与其他实际上是临时数据混合在一起有时会导致人们意外删除他们的日志文件。
- Bake 模板现在应该放在 src/Template/Bake 中。
供应商前缀插件已更改
使用供应商前缀的插件(例如:AcmeCorpUsers)不再被重命名。现在必须使用 AcmeCorp/Users.User 而不是 Users.User。此外,供应商前缀将用作插件文件夹中的文件夹名称,因此插件将安装在 plugins/AcmeCorp/Users 文件夹中。
已删除的方法
- 在 basics.php 中定义的许多不常用的方法已被删除。config() 之类的函数不再存在。
- Validation::ssn() 已被删除。
- 已在 ORM 中添加对 CASE 语句的支持。
- Helper::webroot()、Helper::assetUrl()、Helper::assetTimestamp() 已移动到 UrlHelper。这使您可以轻松替换每个帮助器中的 URL 构建功能。您需要将 Url 添加到帮助器中的 $helpers 列表中。
- App::objects() 已被删除。
我们希望最大限度地减少未来 beta 和候选发布版中重大更改的影响。