Installer un module PHP supplémentaire
Il existe de nombreuses extensions disponibles pou PHP. Mais celle-ci ne sont pas forcément installées par défaut. Aussi est il nécessaire de pouvoir les installer postérieurement à l'installation principale du serveur PHP comme décrite dans l'article intitulé "Créer un serveur PHP".
L'installation d'une extension PHP se fait en deux temps : d'abord il faut installer l'extension sous Rasbian, puis ensuite modifier le fichier php.ini pour configurer cette extension.
L'installation d'une extension PHP se fait en deux temps : d'abord il faut installer l'extension sous Rasbian, puis ensuite modifier le fichier php.ini pour configurer cette extension.
Exemple d'installation d'une extension : gd
Parmi les extensions disponibles, l'une des plus intéressantes et des plus amusantes à utiliser est l'extension gd (Graphic Draw). Cette extension permet de générer et de manipuler des images par programmation. La documentation de cette extension est disponible à l'adresse : http://php.net/manual/fr/book.image.php.
Installation de l'extension gd sous Rasbian
L'installation de gd sous Rasbian se fait de façon standard en utilisant la commande apt-get install. Comme toute installation, ne pas oublier d'utiliser apt-get update et apt-get upgrade au préalable.
pi@slave01:~ $ sudo apt-get install php7.0-gd
Lecture des listes de paquets... Fait
. . .
Paramétrage de php7.0-gd (7.0.27-0+deb9u1) ...
Creating config file /etc/php/7.0/mods-available/gd.ini with new version
Traitement des actions différées (« triggers ») pour libc-bin (2.24-11+deb9u3) ...
Traitement des actions différées (« triggers ») pour libapache2-mod-php7.0 (7.0.27-0+deb9u1) ...
pi@slave01:~ $ sudo service apache2 restart
pi@slave01:~ $
Lecture des listes de paquets... Fait
. . .
Paramétrage de php7.0-gd (7.0.27-0+deb9u1) ...
Creating config file /etc/php/7.0/mods-available/gd.ini with new version
Traitement des actions différées (« triggers ») pour libc-bin (2.24-11+deb9u3) ...
Traitement des actions différées (« triggers ») pour libapache2-mod-php7.0 (7.0.27-0+deb9u1) ...
pi@slave01:~ $ sudo service apache2 restart
pi@slave01:~ $
En invoquant la page phpinfo.php créée lors de l'installation de PHP, les paramètres de l’extension gd sont maintenant visibles.
Test de l'extension gd
Le plus simple, pour tester le fonctionnement d'une extension, c'est de créer un script PHP qui invoque les fonctions qu'elle expose. Par exemple, pour l'extension gd, on peut appeler la fonction gd_info() qui retourne comme résultat un tableau associatif contenant les paramètres de l'extension. Pour cela, on va créer une page gdinfo.php dont le contenu est :
<?php
$gdinfos = gd_info();
?>
<h2>Paramètres extension GD</h2>
<?php
foreach ($gdinfos as $key=>$value)
{
echo "$key=$value<br />";
}
?>
$gdinfos = gd_info();
?>
<h2>Paramètres extension GD</h2>
<?php
foreach ($gdinfos as $key=>$value)
{
echo "$key=$value<br />";
}
?>
Si l'installation est correct le contenu du tableau associatif doit s'afficher comme ceci :
Configurer gd
Comme toutes les extensions, la configuration se fait dans /etc/php/7.0/apache2/php.ini. Chaque extension possède un paragraphe dédié entre crochets. Les paramètres configurables pour l'extension se situent après [gd]. Par défaut, ils sont préfixés avec un point-virgule. C'est alors leur valeur par défaut qui est utilisée.
. . .
[gd]
; Tell the jpeg decode to ignore warnings and try to create
; a gd image. The warning will then be displayed as notices
; disabled by default
; http://php.net/gd.jpeg-ignore-warning
gd.jpeg_ignore_warning = 1
. . .
[gd]
; Tell the jpeg decode to ignore warnings and try to create
; a gd image. The warning will then be displayed as notices
; disabled by default
; http://php.net/gd.jpeg-ignore-warning
gd.jpeg_ignore_warning = 1
. . .
Après avoir redémarré Apache (commande sudo service apache2 restart), la configuration de chaque extension mise à jour est affichée dans la page phpinfo.php.
D'autres extensions de PHP qui peuvent être utiles
Module PHP | Paquet Rasbian | Commentaire |
---|---|---|
bcmath | php7.0-bcmath | Pour des calculs mathématiques qui nécessitent une très grande précision (paramétrable jusqu'à 2.147.483.647 décimales en fonction des ressources disponibles sur le serveur. |
xml dom xsl | php7.0-xml | Pour manipuler des documents XML via l'API DOM. |
gd | php7.0-gd | Pour créer et manipuler des images. |
imap | php7.0-imap | Pour gérer un serveur de messagerie. |
intl | php7.0-intl | Pour créer des applications où les paramètres régionaux (internationalisation) sont nécessaires. |
ldap | php7.0-ldap | Pour accéder à des serveurs LDAP (OpenLDAP). |
soap | php7.0-soap | Pour accéder à des Web Services en mode SOAP. |
zip | php7.0-zip | Pour gérer des fichiers compressés au format ZIP. |
Commentaires
Enregistrer un commentaire