从PHP4到PHP5的顺利迁移有哪些好的步骤。什么类型的代码可能会破坏?
答案 0 :(得分:8)
我曾经使用过一个非常重视PHP4 XML支持的应用程序,并且需要花费大量工作才能转移到PHP5。
我当时正在考虑的另一个重要变化是更改了函数参数的默认处理。在PHP4中,如果我记得的话,除非你另有说明,否则它们是按副本进行复制,但在PHP5中默认情况下更改为pass-by-reference。在编写良好的代码中,这可能不会对您产生重大影响,但它肯定会导致问题。
我认为我发现另外一件事就是不再允许对象覆盖他们的'this'字段。我想说这是一个非常糟糕的主意(我认为它可能不是PHP4中的故意功能),但我当然发现我们系统的一些部分依赖它。
希望其中一些有用。
答案 1 :(得分:2)
我可以给任何使用PHP4的人提供的最佳建议是:
error_reporting( E_ALL );
它几乎会告诉你你需要做什么。
答案 2 :(得分:1)
我们有一个严重依赖PHP 4 XML DOM功能的应用程序,它需要大量的重组来改变PHP 5.
除此之外,大多数更改都是对错误处理(利用异常)和PHP类等方面的改进。
答案 3 :(得分:1)
OOP是最大的差异之一。它不会破坏,因为PHP4和PHP5 OOP样式是可以互换的,但我建议利用PHP5的新OOP样式。将现有的类转换为PHP5并不是一项繁重的工作,它确实为您提供了一些额外的神奇方法,可以帮助解决一些现有的黑客攻击(我记得在大多数类中都有一个几乎没用的__toString等效方法)。