问题
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!
回答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
回答2:
You can also use extension_loaded():
if (extension_loaded('mcrypt')) {
echo "mcrypt is loaded!";
} else {
echo "mcrypt isn't loaded!";
}
回答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".
来源:https://stackoverflow.com/questions/25476889/how-to-check-if-mcrypt-extension-exists-in-php