public static function loadModuleIfAbsent($mod, $version = null, $compare = '>=')
{
if (!extension_loaded($mod)) {
if (!get_cfg_var('enable_dl')) {
return false;
}
if (!@dl(basename($mod) . '.so')) {
return false;
}
}
if (!$version) {
return true;
}
try {
$ext = new \ReflectionExtension($mod);
return version_compare($ext->getVersion(), $version, $compare);
} catch (\ReflectionException $e) {
return false;
}
}