我应该升级到PHP 5.3吗?

时间:2009-07-03 08:19:27

标签: php php-5.3 porting

PHP版本5.3已经发布,虽然看起来很棒,但我的所有代码都已正常运行。我没有看到这个新版本提供什么来证明在升级后升级和解决可能的问题是合理的。

我是否应该仅仅为了良好的练习而升级,或者除非我实际使用新功能,否则不需要升级?

4 个答案:

答案 0 :(得分:14)

您可能会考虑仅针对“改进的PHP运行时速度和内存使用情况”进行升级以及修复错误。 Source。我还要说,如果你在任何地方使用create_function,你应该用更清晰的lambda升级并替换那个丑陋,令人讨厌的混乱。 Here是5.2的迁移指南。

答案 1 :(得分:2)

我想说,为了做出这个决定,你需要回答几个重大问题。其中最大的一点是,您的网站/产品/客户做了什么?如果您正在管理应用程序(比如说CMS或购物车),那么您需要了解许多主机将暂时不升级,因为他们等待他们使用的操作系统的官方支持的软件包/ RPM,并且需要时间建立,测试和发布。

如果这只是在专用服务器上运行的自定义站点,那么同样的问题可能是一些重要的问题。虽然,在这种情况下,你总是可以手工编译,如果你像我一样干净,有组织的服务器,那么这可能不一定是最好的主意。就像杰森提到的那样,应该会有显着的速度提升,正如WishCow所说,如果你使用create_function(),你现在可以抛弃它们以获得更清晰的代码。

另请注意您使用的任何第三方库/扩展(PECL,PEAR,Zend Framework,Drupal,Wordpress或自定义编写),但由于任何特定原因,可能无法在5.3上使用。

如果可能,干运行升级总是更好。我家里的桌子旁边有一台服务器,我可以用来升级和打开一个分析器,看看我的网站的性能是什么,并确保一切正常。如果你不能做到这一点那么你必须要小心,因为如果事情进展顺利,你可能会有一些停工时间。

答案 2 :(得分:1)

有两件事你可能会感兴趣,第一件事是用lambdas替换create_function(),另一件是查看后期的静态绑定。 现在LSB已经可用,有一些东西可以用更清洁,更有效的方式解决。

就个人而言,我期待的是特质,但它没有包含在这个版本中。当我发现时,我很伤心:(。现在我甚至不记得为什么我认为它会包含在5.3中。

答案 3 :(得分:0)

我正在思考同样的事情......如果有任何升级错误修复,但确保检查兼容性,在这个版本中有一些变化(goto,名称空间,参数解析,mhash等...) ,

用lambdas替换create_function本身应该足以升级,使用create_function的内存使用和开销是荒谬的。

查看迁移指南http://us.php.net/migration53