Обновление PHP с версии 5.2 до 5.3
Я использую PHP версии 5.2 и теперь вам нужно перейти на версию 5.3 (Windows/Apache). Я использовал 5.2 в течение некоторого времени и настроил много вещей в php.ini и добавил некоторые дополнительные расширения.
Как я могу перейти на версию 5.3 без необходимости переконфигурировать все? Или для обновления требуется, чтобы я снова настраивал свою установку PHP?
Спасибо, Брайан
Ответы
Ответ 1
Переход не всегда легко, но не сложно. PHP 5.3 вносит некоторые изменения во внутренний API Zend, поэтому некоторые расширения PHP необходимо обновить (мне пришлось обновить xDebug). Это означает, что вам нужно найти соответствующие DLL, что может быть не так просто, в зависимости от вашей текущей настройки.
Конфигурационный файл, php.ini, почти то же самое. Фактически вам действительно нужно взять некоторые вещи (например, extension=php_pdo.dll
больше не требуется).
Просто запустите php -m
из командной строки и посмотрите, какие ошибки вызывают. Я только что скопировал файл php.ini из версии 5.2 и выполнил настройку 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"
Ответ 2
Если вы посмотрите на Обновление до PHP 5.3 - простой способ, я думаю, что это решит вашу проблему, но если вы на машине Linux, которую вы можете использовать apt-get
, вам нужно только:
$ sudo apt-get upgrade php php-* mysql-*
$ /etc/init.d/httpd restart
С уважением.
Ответ 3
Главное, с чем я столкнулся, - это беспорядок новых уведомлений E_DEPRECATED при выполнении чего-либо из PEAR. Как и другие комментарии, вы захотите соответствующим образом настроить уровни отчетов об ошибках.
Еще одно замечание: если вы переходите из системы управления пакетами, такой как macports или apt, некоторые макеты конфигурации изменились, и вам придется адаптироваться там.
Кроме этого, между 5.2 и 5.3 не существует много функциональных различий.