I am trying to detect if curl is installed using PHP in a script run from the command line. I tried the following:
if(@function_exists('curl_version')){
...
}
and
error_reporting(E_ERROR);
ini_set('display_errors', '0');
if(is_callable('curl_init')){
...
}
but in both cases I get this message:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-zts-20121212/curl.so' - /usr/local/lib/php/extensions/no-debug-zts-20121212/curl.so: cannot open shared object file: No such file or directory in Unknown on line 0
I would prefer to hide the error message, but it appears that the @ and the error_reporting don't work. Is there a different way to suppress this message?
PHP Startup
.if(function_exists('curl_init')){ /* go curling! */ }else{ /* we are experiencing technical difficulties, please try again later */ }
will let you know if CURL is available but what's more important is that you hide all error messages from the user in a production system and log them. Review your error log weekly and fix any issues that arise.php -r 'echo function_exists("curl_init");'