我有一个遗留的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?)
答案 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);
}
}