Compilation des sources
Installation d'extensions PECL
Installation sur les système Windows
PHP Manual

## 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émentaire 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
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

Compilation des sources
Installation d'extensions PECL
Installation sur les système Windows
PHP Manual