Manuel PHP
Précédent | Chapitre 6. Installation sur les système Windows | Suivant

# 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 6-8. 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.

Tableau 6-1. 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_cpdf.dll | Fonctions ClibPDF | Non
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_cybercash.dll | Fonctions de paiement Cybercash | PHP <= 4.2.0
php_db.dll | Fonctions DBM | Deprécié. Utilisez plutôt DBA (`php_dba.dll`)
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 | En-tête de lecture EXIF pour JPEG | 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 II | Requiert : bibliothèque Ingres II
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 Multi-Byte String | 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 | MySQL functions | PHP >= 5.0.0, requires `libmysql.dll` (intégré)
php_mysqli.dll | MySQLi functions | 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_oracle.dll | Fonctions Oracle | Requiert : bibliothèque cliente Oracle 7
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 | SOAP functions | PHP >= 5.0.0
php_sockets.dll | Fonctions Socket | Non
php_sybase_ct.dll | Fonctions Sybase | Requiert : bibliothèque cliente Sybase
php_tidy.dll | Tidy functions | 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

Précédent | Sommaire | Suivant
Compilation des sources | Niveau supérieur | Installation d'extensions PECL