Par exemple, la fonction date('l j F Y') affiche pour aujourd'hui:
Wednesday 15 September 2010 au lieu de Mercredi 15 Septembre 2010.
Afficher la date en francais
Pour afficher la date dans la langue du pays de l'internaute, une solution est de construire une class de constante. La class DateConversion contient les fonctions statistiques suivantes:- frenchDayName(): Afficher la nom du jour en francais à partir du numéro du jour,
- frenchMonthName(): Afficher le nom du mois en francais à partir du numéro du mois.
<?php
class DateConversion {
/**
* Afficher la nom du jour en francais
* @param int numero du jour
* @return string nom du jour
*/
static public function frenchDayName($daynum) {
$ar=array("", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche");
if ($daynum>0&&$daynum<8) {
return $ar[$daynum];
} else {
return $daynum;
}
}
/**
* Afficher le nom du mois en francais
* @param int numero du mois
* @return string nom du mois
*/
static public function frenchMonthName($monthnum) {
$ar=array("", "Janvier", "Fevrier", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Decembre");
if ($monthnum>0&&$monthnum<13) {
return $ar[$monthnum];
} else {
return $monthnum;
}
}
}
?>
Afficher la date du jour
Voyons comment afficher la date du jour en PHP avec notre class de constante<?php
echo DateConversion::frenchDayName(date('N'))
.' '.date('j').' '.DateConversion::frenchMonthName(date('n'))
.' '.date('Y');
//Affiche Mercredi 15 Septembre 2010 pour aujourd'hui
?>
De la même manière, la class peut etre adaptée à toutes les langues. En effet, il suffit de modifier le tableau de constante contenu dans l'array pour afficher le nom du jour et le nom du mois dans une langue du monde.