Как и любой другой язык, php богат на различные функции. В процессе прогресса языка многие из них устаревают и удаляются.

Итак, на дворе 2018 год, ничего не стоит на месте, в том числе и php. Если вдруг по каким бы то ни было причинам ваш проект использует версию php ниже 7, пора бы уже задуматься о миграции на новую версию.

В новой версии языка появились новые функции, но также некоторые старые функции и расширения были объявлены deprecated или удалены. Для корректной миграции необходимо избавиться от всех удаленных функций в своем проекте. О них мы сейчас и поговорим.

Deprecated

Следующие изменения объявлены устаревшими и будут удалены в ближайших версиях.

Имеются в виду методы, имя которых совпадает с именем класса.

Статический вызов необъявленного как static метода объявлен устаревшим и будет удален в будущем.

Теперь password_hash() автоматически генерирует криптографически безопасную соль.

Опция контекста SSL capture_session_meta объявлена устаревшей. Метаданные SSL теперь доступны с помощью функции stream_get_meta_data()

Функция, используемая в расширении ldap.

Удаленные

Данное расширение было объявлено как deprecated в версии php 5.5 и вот наконец удалено полностью из языка. Вместо него предлагается использовать расширение mysqli либо более предпочтительное pdo.

Ситуация такая же как и с mysql. Вместо него используйте pdo либо sqlsrv.

Deprecated с 4.1. Используйте call_user_func()

Deprecated с 4.1. Используйте call_user_func_array()

Начиная с версии 7.0 php использует регулярные выражения основанные на языке PCRE. Это также относится к соответствующим функциям.

А также magic_quotes_runtime(), были удалены так как отказ от «магических кавычек» произошел еще в версии 5.4.

Устаревшая функция. Используйте stream_set_blocking().

Удалена только из PHP-FPM в связи с нестабильностью работы.

Из библиотеки GD были удалены шрифты PostScript Type1 и связанные с ними функции. Вместо этого используйте шрифты TrueType.

Удалена в пользу datefmt_set_timezone().

Рубрики: php

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *