banniere
Ecrit par leknoppix le 25-04-2010 à 12:58:32
Ecrire les dates en toutes lettres

Il arrive souvent au niveau des sites internet ou des blogs, d'avoir besoin d'écrire en lettre la date et l'heure d'un article ou d'un commentaire stocké dans la base de données en format timestamp (durée en seconde depuis le 1er janvier 1970).

Beaucoup de développeurs sont obligés de concevoir des fonctions à la main, en mettant, par exemple, les noms des jours dans les tableaux et les mois dans un autre. Cependant, il ne s'agit pas de la meilleure solution. Il existe des instructions php qui permettent d'obtenir des dates en toutes lettres.

Voila comment faire. Nous allons commencer par définir la localisation géologique et le fuseau horaire.

<?php
date_default_timezone_set('Europe/Paris'); 
setlocale(LC_ALL, 'fr_FR', 'fra');
?>

Maintenant, nous allons écrire un masque qui va permettre de réaliser une date sous le format jour / mois / année à heure / minute / seconde. Voici le filtre: 

<?php
$masque = '%A %d %B %Y %H:%M:%S';
?>

Nous avons presque fini, nous allons maintenant utiliser une fonction php appelée strftime() qui nécessite comme paramètre le masque que nous venons de créer et la durée en seconde. Nous obtenons donc:

<?php
date_default_timezone_set('Europe/Paris'); 
setlocale(LC_ALL, 'fr_FR', 'fra'); 
$masque = '%A %d %B %Y %H:%M:%S';
echo strftime($masque, $dateenseconde);
?>

Voilà, c'était pas compliqué. Pour ceux qui souhaiterons mettre l'horaire avec un autre fuseau horaire, avec ces 4 lignes, vous le pourrez.

<?php
date_default_timezone_set('America/Los_Angeles');
setlocale(LC_ALL, "En_Us");
?>

Ce sont surtout ces deux premières lignes qui sont importantes. Si vous avez des questions, n'hésitez pas à poster en commentaire.

 

Publier sur mon compte twitterPublier sur mon viadeoPublier sur mon deliciousPublier sur mon compte twitter

Ajoute ton commentaire

Pseudo : *
E-Mail : *
MSN :
Site internet :
Blog :
Note : *
Commentaire : *
Ne pas compléter :

Le 9-11-2010 à 15:16:21 par leknoppix

avatarPetit bug qui peut arrivé. Sur certain Hébergeur, il faut indiquer l'encodage souhaité: setlocale(LC_ALL, 'fr_FR.utf8','fra'); Désolé, je viens juste d'être en face de ce soucis que je n'avais jamais eu auparavant.

Note :  notenotenotenotenote
© 2007-2024