Après avoir installé PHP et un serveur web sous Windows, vous devriez probablement vouloir installer quelques extensions pour avoir des fonctionnalités supplémentaires. Vous pouvez choisir quelles extensions seront chargées lors du démarrage de PHP en modifiant votre php.ini. Vous pouvez également en charger dynamiquement dans vos scripts à l'aide de la fonction dl().
Les bibliothèques DLLs pour les extensions PHP sont préfixées par php_.
Beaucoup d'extensions sont incluses dans la version pour Windows de PHP. Cela signifie que les bibliothèques DLL additionnelles et la directive extension ne sont pas utilisées pour charger ces extensions. La table des extensions PHP pour Windows liste les extensions qui requièrent des bibliothèques DLL additionnelles PHP. Voici une liste d'extensions internes (mise à jour : PHP 5.0.4) : BCMath, Caledar, COM, Ctype, DOM, FTP, LibXML, Iconv, ODBC, PCRE, Session, SimpleXML, SPL, SQLite, WDDX, XML et Zlib.
Le dossier par défaut dans lequel PHP cherche des extensions est c:\php5. Pour changer ce comportement pour refléter votre installation de PHP, éditez votre fichier php.ini :
Vous devriez pouvoir changer le paramètre extension_dir pour pointer vers le dossier contenant vos extensions ou l'endroit où vous avez placé vos fichiers php_*.dll. Par exemple :
extension_dir = c:\php\extensions
Pour activer ces extensions dans votre php.ini, vous devez décommenter les lignes extension=php_*.dll dans votre php.ini. Cela se fait en effaçant le point virgule (";") du début de la ligne que vous voulez activer.
Exemple #1 Activer l'extension Bzip2 pour PHP-Windows
// changez la ligne suivante : ;extension=php_bz2.dll // En : extension=php_bz2.dll
Quelques extensions ont besoin de bibliothèques DLLs supplémentaires pour fonctionner. La plupart d'entre elles peuvent être trouvées dans le paquet de votre distribution de PHP dans le dossier principal mais quelques autres, comme Oracle (php_oci8.dll), requierent des DLLs qui ne sont pas fournies avec votre distribution de PHP. N'oubliez pas d'inclure le dossier C:\php dans la variable d'environnement PATH (ce processus est expliqué dans une entrée de la FAQ).
Quelques-unes de ces bibliothèques ne sont pas incluses dans la distribution de PHP. Lisez la documentation de chaque extension pour plus de détails. Lisez également la section du manuel nommée Installation d'extensions PECL pour plus de détails sur PECL. Un nombre toujours plus important d'extensions PHP se trouve dans PECL, et ces extensions nécessitent un téléchargement séparé.
Note: Si vous utilisez PHP en tant que module d'un serveur web, pensez à redémarrer votre serveur web pour charger les modifications apportées au fichier php.ini.
La table suivante décrit quelques extensions disponibles requérant des bibliothèques DLLs supplémentaires.
Extension | Description | Notes |
---|---|---|
php_bz2.dll | bzip2 : fonctions de compression | Non |
php_calendar.dll | Calendar : fonctions de conversion | Non |
php_crack.dll | Fonctions Crack | None |
php_ctype.dll | Famille de fonctions ctype | Non |
php_curl.dll | Fonctions de bibliothèque client CURL | Requiert : libeay32.dll, ssleay32.dll (intégré) |
php_dba.dll | DBA: DataBase (dbm-style) Fonctions d'abstraction | Non |
php_dbase.dll | Fonctions dBase | Non |
php_dbx.dll | Fonctions dbx | |
php_exif.dll | Fonctions EXIF | php_mbstring.dll. Attention, php_exif.dll doit être chargé après php_mbstring.dll dans le php.ini. |
php_fbsql.dll | Fonctions FrontBase | Non |
php_fdf.dll | FDF : fonctions Forms Data Format. | Requiert : fdftk.dll (intégré) |
php_filepro.dll | Fonctions filePro | Accès en lecture seule |
php_ftp.dll | Fonctions FTP | Non |
php_gd2.dll | GD : Bibliothèque de fonctions image | GD2 |
php_gettext.dll | Fonctions Gettext | PHP <= 4.2.0 requiert gnu_gettext.dll (intégré), PHP >= 4.2.3 requiert libintl-1.dll, iconv.dll (intégré). |
php_hyperwave.dll | Fonctions HyperWave | Non |
php_iconv.dll | ICONV : conversion de jeux de caractères | Requiert : iconv-1.3.dll (intégré), iconv.dll |
php_ifx.dll | Fonctions Informix | Requiert : bibliothèque Informix |
php_iisfunc.dll | Fonctions d'administration IIS | Non |
php_imap.dll | IMAP : fonctions POP3 et NNTP | Non |
php_ingres.dll | Fonctions Ingres | Requiert : bibliothèque Ingres |
php_interbase.dll | Fonctions InterBase | Requiert : gds32.dll (intégré) |
php_ldap.dll | Fonctions LDAP | Requiert libeay32.dll, ssleay32.dll (intégré) |
php_mbstring.dll | Fonctions Chaînes multioctets | Non |
php_mcrypt.dll | Fonctions Mcrypt Encryption | Requiert : libmcrypt.dll |
php_mhash.dll | Fonctions Mhash | Requiert : libmhash.dll (intégré) |
php_mime_magic.dll | Fonctions Mimetype | Requiert : magic.mime (intégré) |
php_ming.dll | Fonctions Ming pour Flash | Non |
php_msql.dll | Fonctions mSQL | Requiert : msql.dll (intégré) |
php_mssql.dll | Fonctions MSSQL | Requiert : ntwdblib.dll (intégré) |
php_mysql.dll | Fonctions MySQL | Requiert : libmysql.dll (intégré) |
php_mysqli.dll | Fonctions MySQLi | Requiert : libmysql.dll (libmysqli.dll en PHP <=5.0.2) (intégré) |
php_oci8.dll | Fonctions Oracle 8 | Requiert : bibliothèque cliente Oracle 8.1+ |
php_openssl.dll | Fonctions OpenSSL | Requiert : libeay32.dll (intégré) |
php_pdf.dll | Fonctions PDF | Non |
php_pgsql.dll | Fonctions PostgreSQL | Non |
php_shmop.dll | Fonctions de partage de mémoire | Non |
php_snmp.dll | Fonctions SNMP | NT seulement ! |
php_soap.dll | Fonctions SOAP | Non |
php_sockets.dll | Fonctions Socket | Non |
php_sybase_ct.dll | Fonctions Sybase | Requiert : bibliothèque cliente Sybase |
php_tidy.dll | Fonctions Tidy | Non |
php_tokenizer.dll | Fonctions Tokenizer | Non |
php_w32api.dll | Fonctions W32api | Non |
php_xmlrpc.dll | Fonctions XML-RPC | Requiert : iconv.dll (intégré) |
php_xslt.dll | Fonctions XSLT | Requiert : sablot.dll, expat.dll, iconv.dll (intégré). |
php_yaz.dll | Fonctions YAZ | Requiert : yaz.dll (intégré) |
php_zip.dll | Fonctions Zip File | Accès en lecture seule |
php_zlib.dll | Fonctions de compression ZLib | Non |