PHP5.4和CakePHP2.3的兼容性

PHP5.4和CakePHP2.3的兼容性,php,cakephp-2.3,Php,Cakephp 2.3,我有一个用CakePHP2.3编写的项目,我正在考虑将PHP升级到5.4版。我正在努力保持代码的干爽,PHP5.4中的特性可以帮助我做到这一点。我当前的PHP版本是5.3.3 在我开始在服务器上安装东西之前,我想知道这是否是个好主意 您是否同时使用过CakePHP2.3和PHP5.4,如果是,您是否遇到过任何兼容性问题 您是否使用了PHP5.4中的新特性,如果使用了,您是否有任何问题 我在PHP5.4服务器上有一个CakePHP2.2项目。由于CakePHP的类是用继承模式正确编写的,所以它工

我有一个用CakePHP2.3编写的项目,我正在考虑将PHP升级到5.4版。我正在努力保持代码的干爽,PHP5.4中的特性可以帮助我做到这一点。我当前的PHP版本是5.3.3

在我开始在服务器上安装东西之前,我想知道这是否是个好主意

  • 您是否同时使用过CakePHP2.3和PHP5.4,如果是,您是否遇到过任何兼容性问题

  • 您是否使用了PHP5.4中的新特性,如果使用了,您是否有任何问题


我在PHP5.4服务器上有一个CakePHP2.2项目。由于CakePHP的类是用继承模式正确编写的,所以它工作得很好。然而,如果您的应用程序不正确地实现了继承,那么您将在5.4中得到PHP错误,而在5.3中没有

class parentClass{
    public function test($foo);
}

class childClass extends parentClass{
    //Does not properly implement test
    public function test();
}
否则,CakePHP2.0+是完全兼容的。(由于CakePHP2.3仍在开发中,我没有升级。但它与2.2兼容,因此答案适用于2.0分支的所有版本)

CakePHP直到3.0版才正式支持Traits。然而,我在我的项目中使用了它们,没有任何问题。事实上,它们非常方便!您不能使用任何CakePHP方法导入它们(目前还不支持),只需使用标准的
require_once('trait_file_name.php')
CakePHP3.0将需要PHP5.4,因此您希望使用的开发模式即将推出