How to check if mcrypt extension exists in php

29,736

Solution 1

You can use function_exists to check if one of the mcrypt functions exists.

if(function_exists('mcrypt_encrypt')) {
    echo "mcrypt is loaded!";
} else {
    echo "mcrypt isn't loaded!";
}

Edit 30.07.2016:
Since my answer still gets a few upvotes from time to time, I benchmarked the performance of mine and Cristi Draghici's answers. The conclusion is, that function_exists is a bit faster than extension_loaded. https://3v4l.org/So4Ep

Solution 2

You can also use extension_loaded():

if (extension_loaded('mcrypt')) {
    echo "mcrypt is loaded!";
} else {
    echo "mcrypt isn't loaded!";
}

Solution 3

If you are using a development environment like XXAMP, or WAMP, there should be a default "phpinfo" page. For example, in XXAMP it would be:

http://localhost/dashboard/phpinfo.php

You can also achieve this same screen by viewing a php file that has: phpinfo(); somewhere in the code.

In this screen, simply search for the string "mcrypt support". If installed, you will see a box that says "enabled".

Share:
29,736
Heroselohim
Author by

Heroselohim

Updated on July 27, 2020

Comments

  • Heroselohim
    Heroselohim almost 4 years

    I would like to know the simplest and fastest PHP code line to check if mcrypt extension is available/installed.

    There is a function that encrypts a string and first it requires to check if mcrypt is usable. If not, it will execute an alternative encrypt solution available on the system.

    Thanks!

    • i alarmed alien
      i alarmed alien over 9 years
      Have you searched to see if there is a generic PHP function that checks whether a function exists?
    • Heroselohim
      Heroselohim over 9 years
      Yes, you are right with that, but also I was looking for the fastest check code.
    • Elzo Valugi
      Elzo Valugi almost 8 years
      you can use some of the techniques from stackoverflow.com/questions/3131411/…