Tester en local sous Debian 9.x + PHP 7.2.x


La version de Debian 9 est fournie avec PHP 7.0.x, mais il est possible de passer en PHP 7.2.x grâce à la mise à disposition un dépôt de Ondřej Surý permettant de télécharger et d’installer cette version PHP 7.2.x

Si vous avez installé PHP 7.0.x + MariaDB comme précédemment, il suffit de suivre les information ci après pour installer PHP 7.2.x.
Sinon sur page  PHP 7.0.x + MariaDB remplacer 4. Installation de PHP7.0 par les informations suivantes.

Installation de PHP7.2 (Terminal administrateur)

Vérifier
que apt-transport-https,  lsb-release et ca-certificates sont installés
sinon
apt-get install apt-transport-https lsb-release ca-certificates

dans mon cas lsb-release et ca-certificates étaient déjà installés donc
apt-get install apt-transport-https
Les NOUVEAUX paquets suivants seront installés : 
apt-transport-http

Préparation pour l'ajout du dépôt packages.sury.org

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
Résultats
--2018-04-24 19:36:24--  https://packages.sury.org/php/apt.gpg
Résolution de packages.sury.org (packages.sury.org)… 217.31.192.150, 2001:1488:ac15:ff90::150
Connexion à packages.sury.org (packages.sury.org)|217.31.192.150|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 2239 (2,2K) [application/octet-stream]
Sauvegarde en : « /etc/apt/trusted.gpg.d/php.gpg »
/etc/apt/trusted.gp 100%[===================>]   2,19K  --.-KB/s    in 0s      
2018-04-24 19:36:25 (16,4 MB/s) — « /etc/apt/trusted.gpg.d/php.gpg » sauvegardé [2239/2239]

Ajouter au fichier sources.list
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
Attention le code ci-dessus doit être sur une seule ligne

Cela crée un fichier php.list contenant  deb https://packages.sury.org/php/ stretch main, dans le dossier /etc/apt/sources.list.d/
 
Mise à jour des des paquets du nouveau dépôt
apt-get update


NOTE : Si vous aviez déjà installé PHP 7.0.x
commencer par désinstaller PHP 7.0 en utilisant la commande suivante
apt-get purge 'php7*'

Puis
Installer PHP 7.2
Attention le code ci-dessous doit être sur une seule ligne
apt install php7.2 libapache2-mod-php7.2 php7.2-mysql php7.2-curl php7.2-json php7.2-gd php7.2-intl php7.2-sqlite3 php7.2-gmp php7.2-mbstring php7.2-xml php7.2-zip

Cela doit afficher sur le terminal
apt install php7.2 libapache2-mod-php7.2 php7.2-mysql php7.2-curl php7.2-json 
php7.2-gd php7.2-intl php7.2-sqlite3 php7.2-gmp php7.2-mbstring php7.2-xml
php7.2-zip
- Pour information php7.2-mcrypt n'a pas de version susceptible d'être installée en PHP 7.2
- Supprimer éventuellement les modules qui ne vous intéressent pas
The following additional packages will be installed:
  libargon2-0 libsodium23 libzip5 php7.2-cli php7.2-common php7.2-opcache
  php7.2-readline
Paquets suggérés :
  php-pear
Les NOUVEAUX paquets suivants seront installés :
  libapache2-mod-php7.2 libargon2-0 libsodium23 libzip5 php7.2 php7.2-cli
  php7.2-common php7.2-curl php7.2-gd php7.2-gmp php7.2-intl php7.2-json
  php7.2-mbstring php7.2-mysql php7.2-opcache php7.2-readline php7.2-sqlite3
  php7.2-xml php7.2-zip

Puis une fois l'installation terminée (pour relancer le serveur)
service apache2 restart

Tester avec dans la barre d’adresse du navigateur : http://localhost/phpinfo.php
Cela affichera le contenu du phpinfo

phpinfo72


Si vous avez installé PHP 7.0.x + MariaDB comme précédemment, il faut reprendre les modifications au paragraphe B - Manipulations et ajouts suivant vos besoins
En modifiant bien sur le dossier
/etc/php/7.0/ par /etc/php/7.2/


NOTE pour installer ImageMagick sous PHP
Sous Debian 9 c'est par prévu défaut le paquet est php-imagick
donc soit par Synaptic ou en ligne de commande (Terminal administrateur)
apt install php-imagick

The following additional packages will be installed: ttf-dejavu-core
Les NOUVEAUX paquets suivants seront installés :
php-imagick ttf-dejavu-core

Donc avec PHP 7.2.17-1 cela donne
php-imagick (version 3.4.3-4+0~20190217142022.9+stretch~1.gbpba1eeb) sera installé
ttf-dejavu-core (version 2.37-1) sera installé

Nota l'installtion est valable pour PHP 7 ou 7.1 ou 7.2 ou 7.3 c'est le même paquet qui se trouve dans les dépôts de Stretch et aussi sur le site des packages.sury.org
Puis une fois l'installation terminée (pour relancer le serveur)
service apache2 restart
Le test sur un phpinfo donne l'image suivante
phpinfo imagick_php

Ensuite
prendre un script pour tester par exemple le post 32
cela donne
helloword imagick_php


Pour PHP 7.3 c'est sur cette page Tester en local sous Debian 9.x + PHP 7.3.x

Crédits
pour les affichages en ligne de commande : Syntax highlighting for the Web


Erreurs, omissions, corrections merci de me le signaler

Document http://jc.etiemble.free.fr/abc/ JCE - version du 28/04/2019-0 CC_licence