. */ namespace SP\Core; /** * Class PhpModuleChecker * @package SP\Core */ class PhpModuleChecker { const MODULES = [ 'ldap', 'curl', 'simplexml', 'phar', 'json', 'xml', 'pdo', 'zlib', 'gettext', 'openssl', 'pcre', 'session', 'mcrypt', 'gd', 'mbstring' ]; /** * Missing modules * * @var array */ protected $missing; /** * PhpModuleChecker constructor. */ public function __construct() { $this->checkModules(); } /** * Check for missing modules */ public function checkModules() { $loaded = get_loaded_extensions(); $this->missing = array_filter(self::MODULES, function ($module) use ($loaded) { return !in_array($module, $loaded); }); } /** * Comprobar si el módulo de LDAP está instalado. * * @return bool */ public function ldapIsAvailable() { return extension_loaded('ldap'); } }