How to install mcrypt extension in php7.2/php7.3?

藏色散人
Release: 2023-04-05 18:04:01
Original
13499 people have browsed it

mcrypt is an important encryption support extension library in PHP. This library is not enabled by default in Linux environment. In the window environment, PHP>=5.3, the mcrypt extension is enabled by default. The mcrypt extension is an interface to the mcrypt encryption library. This extension is useful for allowing PHP code that uses mcrypt to run on PHP 7.2.

How to install mcrypt extension in php7.2/php7.3?

#The main problem with the mcrypt extension is that it is based on libmcrypt and has not been developed since 2007. Therefore, even though libmcrypt is still in use, the library's security issues have become a focus for many system administrators due to a lack of proper development and maintenance.

Due to the end of mcrypt extension development, the extension was also removed from PHP 7.2 and moved to an unofficial PECL repository. However, you can still find the mcrypt extension in PHP 5.4 to PHP 7.1. PHP 7.2 has been released, but it does not include the mcrypt extension. As of PHP 7.2, PHP uses libsodium as the encryption library.

To install the mcrypt extension on PHP 7.2, run the following command as the root user of the server:

Verify php and pecl versions

php -v
pecl version
Copy after login

If your php is not 7.2, then use /usr/bin/php7.2 instead of php command.

Install mcrypt extension

Mcrypt PECL extension

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.1
Copy after login

When you see the prompt

libmcrypt prefix? [autodetect] :
Copy after login

Press [Enter] to automatically detect.

After successfully installing mcrypt trought pecl, you should add the mcrypt.so extension to php.ini.

The output will look like this:

...
Build process completed successfully
Installing '/usr/lib/php/20170718/mcrypt.so'    ---->   this is our path to mcrypt extension lib
install ok: channel://pecl.php.net/mcrypt-1.0.1
configuration option "php_ini" is not set to php.ini location
You should add "extension=mcrypt.so" to php.ini
Copy after login

Get the installation path and add it to the cli and apache2 php.ini configuration.

sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/cli/conf.d/mcrypt.ini"
sudo bash -c "echo extension=/usr/lib/php/20170718/mcrypt.so > /etc/php/7.2/apache2/conf.d/mcrypt.ini"
Copy after login

Verify that the extension is installed

Run the command:

php -i | grep "mcrypt"
Copy after login

The output will look like this:

/etc/php/7.2/cli/conf.d/mcrypt.ini
Registered Stream Filters => zlib.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, convert.iconv.*, mcrypt.*, mdecrypt.*
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value
Copy after login

FAQ

Q: I see the error message: ERROR: 'phpize' failed

Answer: You can install php7.2-dev apt-get install php7.2-dev

Q: What is the solution for installing PHP 7.1 with highet settings on MacOS/OSX?

Answer: You can use macports, and then you can install sudo port install php71-mcrypt

Related recommendations: "PHP Tutorial"

This article This article is about how to install the mcrypt extension in php7.2/php7.3. I hope it will be helpful to friends in need!

The above is the detailed content of How to install mcrypt extension in php7.2/php7.3?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!