Расширение MCrypt предназначено для шифрования/дешифрования данных. Оно было признано устаревшим и в итоге, начиная с версии PHP 7.2 его убрали из ядра php. Однако, могут возникнуть ситуации, когда это расширение может понадобится, когда, например, вы работаете с какой-то устаревшей cms или просто старой программой и нет времени или желания переделывать программу.
Расширение MCrypt было перенесено в PECL по адресу https://pecl.php.net/package/mcrypt. На момент написания статьи последняя версия 1.0.3, которая поддерживает PHP 7.2, PHP 7.3 и PHP 7.4, а так же обещает поддержку PHP 8, который пока еще не вышел.
Как установить MCrypt для PHP 7.2, 7.3, 7.4 для Linux
Необходимо выполнить обновление репозитария и затем установить расширение:
$ sudo pecl channel-update pecl.php.net $ sudo pecl install mcrypt-1.0.3
либо так
sudo apt-get -y install gcc make autoconf libc-dev pkg-config sudo apt-get -y install libmcrypt-dev sudo pecl install mcrypt-1.0.3
После установки найдите куда установился файл mcrypt.so. Скорее всего это /usr/lib/php/modules/mcrypt.so или /usr/lib64/php/modules/mcrypt.so
Затем нужно найти php.ini. Не могу указать точный путь, т.к. на разных системах это могут быть абсолютно разные места, например, /etc/php.ini, либо /etc/php/7.2/cli/php.ini или /opt/php72/etc и др. Так же, php.ini может быть в папке пользователя.
В php.ini найдите где добавляются другие расширения (строки начинающиеся "extension="), либо просто в конце файла, каким-нибудь редактором добавьте строку:
extension=/path_to_mcrypt/mcrypt.so
где вместо path_to_mcrypt напишите свой путь, который находили ранее.
Как установить MCrypt для PHP 7.2, 7.3, 7.4 для Windows
Скачайте архив расширения со страницы PECL https://pecl.php.net/package/mcrypt/1.0.3/windows для нужной версии PHP. Если не уверены, какая именно версия Thread Safe (TS) x86, Non Thread Safe (NTS) x86 или тоже x64 нужна, скачайте все четыре версии. Потом просто попробуете каждую из них и какая заработает, ту и оставите.
В скачанном архиве вам нужен файл php_mcrypt.dll - его нужно распаковать в папку, где установлен ваш PHP в подкаталог ext, где находятся и все другие расширения.
В php.ini найдите где добавляются другие расширения (строки начинающиеся "extension="), либо в конце файла, добавьте строку:
extension=<path_to_mcrypt>php_mcrypt.dll
где вместо path_to_mcrypt напишите путь, куда распаковали dll-файл.
Вместо полного пути к библиотеки, можно так же в php.ini написать:
extension=php_mcrypt.dll
или так:
extension=mcrypt
Проверить установку можно просто на одном из сайтов своего сервера выполнить php-код: phpinfo();. При этом, должна появиться секция mcrypt:
На этом установка MCrypt для PHP 7.2, 7.3, 7.4 завершена.
Комментарии к статье:
Добавить комментарий: