CakePHP 3.0.0-RC2 发布

CakePHP 核心团队很高兴地宣布发布 CakePHP 3.0.0-RC2。

CakePHP 核心团队很高兴地宣布发布 CakePHP 3.0.0-RC2。我们的计划是,这将是最终的 3.0.0 发布候选版本,大约 6 周后将发布 3.0.0 稳定版。自从 3.0.0-RC1 以来,我们一直在努力整合社区反馈,修复了许多问题并改进文档。

从早期 3.0.0 版本升级

从早期 3.0.0 版本升级时,您需要进行一些重要的更改。

插件安装

CakePHP 插件安装程序的使用和作用已经改变,需要对您应用程序的 composer.json 文件进行以下更新

"require": {
    "cakephp/plugin-installer": "*",
    "cakephp/bake": "dev-master"
},
"scripts": {
    "post-autoload-dump": "Cake\\Composer\\Installer\\PluginInstaller::postAutoloadDump"
}

这些添加将确保您的插件能够继续正确安装。使用 Composer 安装的插件现在将安装在 /vendor 下。此更改是为了使外部插件和应用程序内插件之间的分离更加清晰。将两者放在同一个目录中对许多用户来说是令人困惑的。

String 重命名为 Text

为了准备 PHP7 和 HHVM,String 类重命名为 CakeUtilityText。旧的类名仍然可以工作,但将在未来的 3.x 版本中删除。

配置文件更改

以前通过 Configure::load() 加载的配置文件需要扩展名。扩展名的存在使得切换配置文件格式变得困难。对于 RC2,您必须删除扩展名。因此,Configure::read(‘app.php’) 现在是 Configure::read(‘app’)。PHP 驱动的配置文件现在应该返回它们的数据,而不是设置 $config 变量。$config 变量现在已弃用,将在未来的 3.x 版本中删除。

ORM 回调一致性

各种 ORM 回调对于 $options 参数使用了一些不一致的类型。现在,所有回调都将为 $options 参数接收一个 ArrayObject。Query::formatResults() 也不再将查询作为参数。如果您需要从结果格式化程序访问查询,请使用闭包。

EventManager::detach() 和 EventManager::attach() 已弃用

这些方法已被 on()off() 替换。这些新方法使用类似于 jQuery 方法的接口。attach()detach() 现在已弃用,将在未来的 3.x 版本中删除。我们很高兴地欢迎 Jad Bitar (jadb)、Walther Lalk (dakota) 和 Anthony Grassiot (antograssiot) 加入核心团队。他们每个人都帮助 3.0.0 成为今天的它。

有关 3.0.0 中所有更改的更多详细信息,您应该查阅 迁移指南。最后,我们要感谢所有帮助 3.0 版本发布的人。下载 打包的发布版本