2

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

在这样的迁移场景(php、sql 查询等)中,典型的 php 问题是什么?

我听说函数参数传递发生了变化,按引用调用/按值调用。你能举个例子或解释一下吗?

还有什么我应该注意的吗?

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

4

3 回答 3

2

我认为最好的迁移帮助来自 PHP 人员自己。

于 2009-04-13T23:44:17.920 回答
2

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

  • 新的保留字
  • 新的类/对象后端

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

如果您受困于类/对象限制,您可以在“v1”模式下运行 Zend 引擎,这会使类和对象的行为类似于 v4 中的行为。这是记录在案的。

于 2009-04-14T01:09:19.870 回答
1

我正在迁移,我发现了很多混叠问题。

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

function php4_clone($object) {
    if (version_compare(phpversion(), '5.0') < 0) {
        return $object;
    } else {
        return @clone($object);
    }
}
于 2009-04-13T23:59:53.827 回答