Sur une installation par défaut de Debian avec apache / PHP, un certain nombre de fonctions de PHP (date() ou mktime() par exemple) retournent des dates formatées en anglais, par exemple Monday 26th of March 2018.
Si l’on souhaite qu’elles soient en français, il faut changer la configuration de la langue par défaut du système en utilisant les locale
Modification du fichier de configuration des langues disponibles :
Le fichier de configuration responsable des langues est /etc/locale.gen : pour l’éditer il faut être en sudo/root
En utilisant nano comme éditeur cela donne :
sudo nano /etc/locale.genOn va alors ajouter en tête du fichier toutes les variantes du français (avec ou sans UTF8) comme langues disponibles, ce qui donne après modification :
toutes les langues commentées (= précédées d’un #) ne sont pas disponibles
Régénération des locales :
Pour que le système prenne en compte les modifications de locale.gen, il faut lancer la commande régénération des locales (toujours en sudo/root) :
sudo locale-genOn peut alors vérifier les langues disponibles pour le système avec la commande :
locale -aqui devrait donner quelque chose comme :
C
C.UTF-8
en_US.utf8
français
french
fr_FR
fr_FR@euro
fr_FR.iso88591
fr_FR.iso885915@euro
fr_FR.utf8
fr_FR.utf8@euro
POSIXUne fois le serveur apache redémarré pour prendre en compte cette modification du système :
sudo systemctl restart apache2
ou
sudo /etc/init.d/apache2 restartl’affichage de la date par le même script PHP devrait donner : Lundi 26 mars 2018
