tutoriel-php-mysql:php:erreur-encodage-strftime

Problème d'encodage avec les dates en toutes lettres

Il arrive fréquemment que lorsque on affiche une date en toutes lettres et en français avec la fonction strftime() de PHP, les lettres accentuées s'affichent mal à l'écran et sont remplacées par des � (par exemple : f�vrier ou d�cembre ).

Le problème vient de l'encodage choisi par PHP pour afficher les données locales pour la date et l'heure. Il faut donc préciser l'encodage ou les encodages (au cas où le système d'exploitation ne supporterait pas le premier encodage.

On ajoute cette ligne à notre script PHP :

setlocale(LC_TIME, "fr_FR.utf8", "fr_FR.utf-8","french.utf8", "french.utf-8");

Pour information, fonction strftime() est obsolète à partir de la fonction 8.1 de PHP Plus d'information sur strftime() et setlocale() sur le guide PHP

  • [03/01/2020] : Création de l'article
  • [28/01/2020] : Amélioration de la mise en page, liens
  • tutoriel-php-mysql/php/erreur-encodage-strftime.txt
  • Dernière modification : 04/08/2022 17:07
  • de zonewebmaster