将PHP版本从5.2升级到5.3

15

我一直使用PHP版本5.2,现在需要升级到版本5.3(Windows/Apache)。我已经使用了5.2一段时间,并在php.ini中自定义了许多内容并添加了一些额外的扩展。

我如何在不必重新配置所有内容的情况下升级到版本5.3?还是说升级需要我重新定制PHP安装程序?

谢谢,布莱恩


如果您能指明您使用的是IIS还是Apache,那么这可能会有所帮助。 - Macha
抱歉,我正在使用Apache。 - Brian
升级时需要记住的一件事是错误报告已添加了新的常量,如果您启用了错误报告,则在升级时可能会显示警告或通知。 您需要在配置中更新error_reporting值。 http://www.php.net/manual/en/errorfunc.constants.php - Jay
1
提示:备份您的旧PHP目录,然后将新的ini建议文件复制到php.ini中,并将新的ini与旧的ini进行比较:http://winmerge.org/ - 它会突出显示更改并使您轻松选择修改。 PHP.ini中有许多注释和链接,因此您可以轻松检查每个更改的设置是否仍然需要。 - hakre
3个回答

8

如果您查看升级到PHP 5.3 - 简单的方法,我认为那将解决您的问题,但如果您在可以使用apt-get的Linux机器上,则需要执行以下操作:

$ sudo apt-get upgrade php php-* mysql-*
$ /etc/init.d/httpd restart

问候。


2
说他可以在Linux上使用 apt-get 是不正确的。应该说如果他在 Debian 衍生版上才可以使用。远非所有发行版都使用 apt-get - fredrik

7
转换并不一定容易,但也不难。PHP 5.3 对内部Zend API进行了一些更改,因此一些PHP扩展需要升级(我不得不升级xDebug)。这意味着您需要找到相应的DLL文件,这可能并不容易,具体取决于您当前的设置。
配置文件php.ini基本上是相同的。实际上,您必须将一些东西删除(例如,extension=php_pdo.dll不再需要)。
只需从命令行执行php -m并查看抛出的错误即可。我刚刚从一个5.2版本中复制粘贴了php.ini文件,并在几分钟内完成了对5.3的配置。
我在前面几行提到了xDebug。如果您使用它,您应该知道激活xDebug的行现在是:
zend_extension = "path\to\PHP 5.3.0\ext\php_xdebug.dll"

替代方案:

zend_extension_ts = "path\to\PHP 5.3.0\ext\php_xdebug.dll"

3
主要问题是从 PEAR 进行任何操作时会出现一堆新的 E_DEPRECATED 通知。像其他评论一样,您需要适当调整错误报告级别。
另一个要注意的事情是,如果您从像 MacPorts 或 apt 这样的软件包管理系统升级,某些配置布局已更改,您需要进行适应。
除此之外,5.2 和 5.3 之间没有太多功能上的区别。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接