升级网站到 PHP 4.3.10
December 20th, 2004
PHP 4.3.9 之前的版本有很大漏洞,这个周末不敢怠慢,立即升级 PHP ,本来以为 Zend 2.5.5 的版本已经足够,所以一直没有想到 Zend 的问题。所以升级后,发现 foreach 语句有问题。
<?php
$arr = array("one", "two", "three");
reset ($arr);
while (list(, $value) = each ($arr)) {
echo "Value: $value<br>n";
}
foreach ($arr as $value) {
echo "Value: $value<br>n";
}
?>
$value 必须用 $value[0] 才输出正确的值。
升级到 ZendOptimizer-2.5.7 后,一切正常了。
另外,介绍升级后调试 PHP 的一个方法:
在升级 PHP ,作 make install 之前,一定备份好 apache/module/libphp4.so 文件。
然后 make install ,如果 升级失败,可以通过恢复老的 libphp4.so 迅速还原。
即使还原 libphp4.so 后, 命令行方式的 PHP 程序已经是新版本,可以用 php –version 检查。
然后,可以在命令行下调试程序在新版本可能存在的问题。