Chargement dynamique de l'extension

Imprimer
PDF
Voici une fonction, utilisé dans SQLiteManager, permettant de verifier la presence de l'extension SQLite et le cas echeant, tente de la charger dynamiquement :
function SQLiteLoaded() {
$SQL_SERVER_OS = strtoupper(substr(PHP_OS, 0, 3));
if($SQL_SERVER_OS == 'WIN') {
$preffix= 'php_'; $extName = 'sqlite'; $suffix = '.dll';
} elseif($SQL_SERVER_OS == 'NET') {
$preffix= 'php_'; $extName = 'sqlite'; $suffix = '.nlm';
} elseif(($SQL_SERVER_OS == 'LIN') || ($SQL_SERVER_OS == 'DAR')) {
$preffix= ''; $extName = 'sqlite'; $suffix = '.so';
}
if(substr(phpversion(), 0, 1) == '5') return true;
$extensions = get_loaded_extensions();
foreach ($extensions as $key=>$ext) $extensions[$key] = strtolower($ext);
if (!extension_loaded($extName) && !in_array('sqlite', get_loaded_extensions())) {
if (@dl($preffix.$extName.$suffix)) {
return true;
} else {
return false;
}
} else return true;
}

Cette fonction fonctionne pour les plateformes Windows, Linux, Mac et Netware. Si vous utilisez d'autre plateformes, ajouter ses specificité en commentaires.

Ajouter un Commentaire


Code de sécurité
Rafraîchir

Chargement dynamique de l'extension - SQLiteManager
Facebook MySpace Twitter Digg Delicious Stumbleupon Google Bookmarks 

Auteur

SQLiteManager est maintenant géré par la société WebInfoPro afin de refaire vivre ce projet tout en restant sous licence GPL

Contact

Vous pouvez nous contacter par email sur sqlitemanager@gmail.com

Qui est en ligne?

Nous avons 99 invités en ligne