Installation des extensions sous Windows

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 :

En PHP 4 (mise à jour : PHP 4.3.11) : BCMath, Caledar, COM, Ctype, FTP, MySQL, ODBC, Overload, PCRE, Session, Tokenizer, WDDX, XML et Zlib

En PHP 5 (mise à jour : PHP 5.0.4), les changements suivants existent. En interne : DOM, LibXML, Iconv, SimpleXML, SPL et SQLite. Les suivants ne sont plus intégrés : MySQL and Overload.

Le dossier par défaut dans lequel PHP cherche des extensions est c:\php4\extensions en PHP 4 et c:\php5 en PHP 5. 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 c:\php\dlls\ en PHP 4 ou dans le dossier principal en PHP 5 mais quelques autres, comme Oracle (php_oci8.dll), requierent des DLLs qui ne sont pas fournies avec votre distribution de PHP. Si vous installez PHP 4, copiez les bibliothèques DLLs depuis le dossier C:\php\dlls vers le dossier principal C:\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.

Extensions PHP
Extension Description Notes
php_bz2.dll bzip2 : fonctions de compression Non
php_calendar.dll Calendar : fonctions de conversion Intégrées à PHP depuis la version 4.0.3
php_crack.dll Fonctions Crack None
php_ctype.dll Famille de fonctions ctype Intégrées à PHP depuis la version 4.3.0
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_domxml.dll Fonctions DOM XML PHP <= 4.2.0 requiert : libxml2.dll (intégré) PHP >= 4.3.0 requiert : iconv.dll (intégré)
php_dotnet.dll Fonctions .NET PHP <= 4.1.1
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 PHP <= 4.2.0
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 Intégrées à PHP depuis la version 4.0.3
php_gd.dll GD : bibliothèque de fonctions image Supprimer en PHP 4.3.2. Notez que les fonctions sur les couleurs vraies ne sont pas disponibles en GD1 ; utilisez plutôt php_gd2.dll.
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é), PHP >=4.2.1 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_java.dll Fonctions Java PHP <= 4.0.6 requit : jvm.dll (intégré)
php_ldap.dll Fonctions LDAP PHP <= 4.2.0 requiert libsasl.dll (intégré), PHP >= 4.3.0 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 PHP >= 4.3.0 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 PHP >= 5.0.0, requires libmysql.dll (intégré)
php_mysqli.dll Fonctions MySQLi PHP >= 5.0.0, requires 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_overload.dll Fonctions Object overloading Intégrée à PHP depuis la version 4.3.0, supprimé de PHP en version 5.0.0.
php_pdf.dll Fonctions PDF Non
php_pgsql.dll Fonctions PostgreSQL Non
php_printer.dll Fonctions Printer Non
php_shmop.dll Fonctions de partage de mémoire Non
php_snmp.dll Fonctions SNMP NT seulement !
php_soap.dll Fonctions SOAP PHP >= 5.0.0
php_sockets.dll Fonctions Socket Non
php_sybase_ct.dll Fonctions Sybase Requiert : bibliothèque cliente Sybase
php_tidy.dll Fonctions Tidy PHP >= 5.0.0
php_tokenizer.dll Fonctions Tokenizer Intégrées à PHP depuis la version 4.3.0
php_w32api.dll Fonctions W32api Non
php_xmlrpc.dll Fonctions XML-RPC PHP >= 4.2.1 requiert : iconv.dll (intégré)
php_xslt.dll Fonctions XSLT PHP <= 4.2.0 requiert sablot.dll, expat.dll (intégré). PHP >= 4.2.1 requiert sablot.dll, expat.dll et 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 Intégrées à PHP depuis la version 4.3.0

LoadingChargement en cours