vérifier la disponibilité des extensions PHP // => obtenir des variables globales // => permettre une configuration à la main par l'utilisateur // mode de stockage des données, écrire 'files' ou 'database' $storage = 'files'; // laisser 'files'!! // l'utilisation d'une BDD n'est pas prévue pour l'instant // Racine du site //$root = getcwd(); //$root = 'http://' . $_SERVER['DOCUMENT_ROOT']; // nom de domaine (utilisé pour créer des liens absolus) // depuis une fonction, faire un: 'global $host;' $host = 'http://' . $_SERVER['HTTP_HOST']; // bibliothèque utilisée pour créer les miniatures if(extension_loaded("imagick")) // on préfère imagemagick { $imageLibrary = 'imagick'; } elseif(extension_loaded('gd')) { $imageLibrary = 'gd'; } else { echo(''); } // format dans lequel créer les sauvegardes, // zip uniquement pour l'instant if(extension_loaded("zip")) { $archiveFormat = 'zip'; } else { echo(''); } // conversion des 2M du php.ini en 2000000 // note: les kibi, mébi et gibi sont inutiles ici function returnBytes($size_str) // chaine du style '2M' { switch (substr ($size_str, -1)) { case 'Ki': case 'ki': return (int)$size_str * 1024; case 'Mi': case 'mi': return (int)$size_str * 1048576; case 'Gi': case 'gi': return (int)$size_str * 1073741824; case 'K': case 'k': return (int)$size_str * 1000; case 'M': case 'm': return (int)$size_str * 1000000; case 'G': case 'g': return (int)$size_str * 1000000000; default: return $size_str; } } // taille max des fichiers dans le php.ini (défaut = 2M) $maxWeight = returnBytes(ini_get('upload_max_filesize'));