Comment afficher la date du jour en français avec PHP ?
Réponses rédigées par Antoine
Dernière mise à jour : 2018-12-31 14:25:09
Question
Je cherche à afficher la date du jour en français avec PHP. J'ai utilisé le code suivant :
echo date('l j F Y, H:i');
Mon problème c'est que les jours et les mois s'affichent en anglais.
Réponse
Pour afficher la date du jour en français avec PHP, vous devez :
- Définir les informations de localisation avec la fonction
setlocale
. - Définir le décalage horaire par défaut avec la fonction
date_default_timezone_set
. - Utiliser la fonction
strftime
pour formater la date avec la configuration locale. - Éventuellement utiliser
utf8_encode
pour gérer les problèmes d'accentuation.
Remarque : utf8_encode
n'est nécessaire que si vous n'avez pas déclaré l'encodage à utiliser dans votre code HTML :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
...
Voici le code PHP pour afficher une date en français :
<?php
setlocale(LC_TIME, 'fr_FR');
date_default_timezone_set('Europe/Paris');
echo utf8_encode(strftime('%A %d %B %Y, %H:%M'));
?>
Remarque : remplacez la dernière ligne par echo strftime('%A %d %B %Y, %H:%M');
si vous avez déclaré l'encodage dans votre code HTML comme explicité précédemment.
Vous trouverez d'avantage d'informations concernant strftime
via http://php.net/manual/fr/function.strftime.php.