Я пытаюсь определить, установлен ли curl с использованием PHP в сценарии, запускаемом из командной строки. Я попробовал следующее:
if(@function_exists('curl_version')){
...
}
а также
error_reporting(E_ERROR);
ini_set('display_errors', '0');
if(is_callable('curl_init')){
...
}
но в обоих случаях я получаю это сообщение:
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
Я бы предпочел скрыть сообщение об ошибке, но похоже, что @ и error_reporting не работают. Есть ли другой способ подавить это сообщение?
Вы можете проверить ваши установленные расширения
$needed_extensions = array('curl', '... other extionsions to check');
$missing_extensions = array();
foreach ($needed_extensions as $needed_extension) {
if (!extension_loaded($needed_extension)) {
$missing_extensions[] = $needed_extension;
}
}
if (count($missing_extensions) > 0) {
echo 'This software needs the following extensions, please install/enable them: ' . implode(', ', $missing_extensions) . PHP_EOL;
exit(1);
}
‘
Других решений пока нет …