Переход на PHP 5.3

В последнее время все больше и больше приходит писем от наших посетителей, которые установив последнюю версию PHP 5.3.1 получают в работающих проектах подобные ошибки:

Deprecated: Function eregi() is deprecated in ...

Неприятная ситуация, когда проект работает и застает врасплох. Хорошо, что большинство хостеров не так быстро делают переход с версии PHP 5.2. на PHP 5.3. Но надолго ли?

Что такое DEPRECATED? Это некоторые параметры, функции и возможности, которые обозначены как НЕИСПОЛЬЗУЕМЫЕ и в последующих версиях будут УДАЛЕНЫ.

Для начала конечно можно временно (повторюсь временно) можно выключить в файле php.ini данные предупреждения что бы сайт восстановил работоспособность и не выдавали так же ошибки вывода заголовков Headers (популярная ошибка новичков headers already sent) В PHP 5.3. для этого добавлено 2 уровня ошибок (error level) E_DEPRECATED и E_USER_DEPRECATED, которые и управляют выводом предупреждений (Warning)

Полный список изменений вы можете увидите на официальном сайте PHP Deprecated features in PHP 5.3.x

Следующие директивы php.ini будут отмечены как НЕИСПОЛЬЗУЕМЫЕ (DEPRECATED) в PHP 5.3 и удалены в PHP 6.0.0

Так же следующие функции:

И следующие возможности:

Следует позаботиться о замене функций аналогами, описанными выше и переписать скрипты.

форум портала PHP.SU
Tags: