将php4 / mysql4迁移到php5 / mysql5:预计php问题?

时间:2009-04-13 23:40:32

标签: php migration php4

我有一个遗留的Web应用程序php4 / mysql4(MyISAM,db包含一些cms,一些用户数据,一些日历应用程序)。现在我将使用php5 / mysql5迁移到新服务器。

这种迁移场景中有什么典型的php问题(php,sql查询,什么)?

我听说函数参数传递已更改,call-by-reference / call-by-value。你能给出一个例子或解释一下吗?

我还应该注意什么?

(mysql问题包含在另一个问题中:Migrating php4/mysql4 to php5/mysql5: switch to InnoDB?

3 个答案:

答案 0 :(得分:2)

我认为最好的迁移帮助是from the PHP guys themselves.

答案 1 :(得分:2)

大多数PHP 4/5兼容性问题都是两件事:

  • 新保留字
  • 新课程/对象后端

大多数v4代码在v5中运行得很好。您可能会遇到问题的代码是依赖于v4类模型的限制或利用v4的参考怪癖。但是大多数人都没有对这些限制进行编码(我有 - 这就是为什么我知道他们在那里)。

如果您遇到类/对象限制,可以在“v1”模式下运行Zend引擎,这使得类和对象的行为与v4类似。 This is documented.

答案 2 :(得分:1)

我正处于迁移过程中,我发现了很多aliasing个问题。

如果您想要一个干净的代码,那么您需要找到适合您特定代码段的解决方案。如果清洁度不是那么重要,您可能会发现此功能非常有用:

function php4_clone($object) {
    if (version_compare(phpversion(), '5.0') < 0) {
        return $object;
    } else {
        return @clone($object);
    }
}