Conversion date

Soyez le premier à donner votre avis sur cette source.

Snippet vu 10 535 fois - Téléchargée 29 fois

Contenu du snippet

ensemble de fonctions permettant la conversion de date (ici en français)

Source / Exemple :


/**********************************************

  • Fonction : translate_month($month)
  • Description : Traduit le nom du moi vers la
  • langue de l'utilisateur
                                                                                          • /
function translate_month($month) { switch ($month){ case 'January': case 'Jan': return _JANUARY; break; case 'February': case 'Feb': return _FEBRUARY; break; case 'March': case 'Mar': return _MARCH; break; case 'April': case 'Apr': return _APRIL; break; case 'May': case 'May': return _MAY; break; case 'June': case 'Jun' : return _JUNE; break; case 'July': case 'Jul': return _JULY; break; case 'August': case 'Aug': return _AUGUST; break; case 'September': case 'Sep': return _SEPTEMBER; break; case 'October': case 'Oct': return _OCTOBER; break; case 'November': case 'Nov': return _NOVEMBER; break; case 'December': case 'Dec': return _DECEMBER; break; } } /**********************************************
  • Fonction : translate_day($day)
  • Description : Traduit le nom de la semaine
  • vers la langue de l'utilisateur
                                                                                          • /
function translate_day($day){ switch ($day){ case 'Monday': case 'Mon': case 'lun': return _MONDAY; break; case 'Tuesday': case 'Tue': case 'mar': return _TUESDAY; break; case 'Wednesday': case 'Wed': case 'mer': return _WEDNESDAY; break; case 'Thursday': case 'Thu': case 'jeu': return _THURSDAY; break; case 'Friday': case 'Fri': case 'ven': return _FRIDAY; break; case 'Saturday': case 'Sat': case 'sam': return _SATURDAY; break; case 'Sunday': case 'Sun': case 'dim': return _SUNDAY; break; } } /**********************************************
  • Fonction : convert_date($date)
  • Description : converti la date AAAA-MM-JJ
  • en jj Mois AAAA tout en respectant
  • la langue
                                                                                          • /
function convert_date($date) { $timestamp = strtotime($date); //Retourne la date en format timestamp $aujourdhui = getdate($timestamp); $month = $aujourdhui['month']; $mois = translate_month($month); $day = $aujourdhui['weekday']; $jour = translate_day($day); $mjour = $aujourdhui['mday']; $annee = $aujourdhui['year']; $formatted_date = "$jour $mjour $mois $annee"; return $formatted_date; } /**********************************************
  • Fonction : date_unix_translate($day)
  • Description : Traduit la date ecrite en unix en date sous format local:
jour(en langue locale)_JJ-Mois(en langue locale)-YYYY HH:MM:SS
                                                                                          • /
function date_unix_translate($date) { $jour=date("D",$date); $jour_local=translate_day($jour);//fonction qui traduit le jours en francais $jour_num=date(" d ",$date); $moie=date("M",$date); $month=translate_month($moie);//fonction qui traduit le mois en francais $date_suite=date(" Y H<\sup>\h</\sup>i:s ",$date); $finale=$jour_local.$jour_num.$month.$date_suite; return $finale; }

Conclusion :


n'oubliez pas de définir les constantes avec define()
exemple define('_JANUARY','Janvier');

A voir également

Ajouter un commentaire Commentaires
Messages postés
4
Date d'inscription
dimanche 3 avril 2005
Statut
Membre
Dernière intervention
25 juillet 2005

je comprend vos commentaires et j'avoue que c'est un peut lent . mais le but principale de ce script n'est pas l'affichage d'une date seulement mais l'enregistrer dans une base de donnée au format int(14) sans utiliser le format date de mysql, ce qui évite les problemes de conversions de date entre anglais et français.la seule chose qui est peut etre superflue est l'utilisation des constantes dans les fonctions translate_day() et translate_month()(A mon avis ca traite mieux les noms des mois et jours puisque on peut utiliser ces fonctions non seulement pour la lecture des dates mais aussi dans un module de translation ou quelque chose comme ca.)
Messages postés
855
Date d'inscription
mardi 19 novembre 2002
Statut
Membre
Dernière intervention
28 juillet 2009
1
je pense aussi qu'il y a (bcp) plus court et robuste avec gettext.

ceci dit, bonne source ! :)
Messages postés
44
Date d'inscription
lundi 14 avril 2003
Statut
Membre
Dernière intervention
19 avril 2006

j'avais vu un truc plus court que j'utilise mais il peut etre un peut moins bien mais beaucoup plus court:

function jour_fr($day) {
$jour = array('Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi');
return $jour["$day"];
}

function mois_fr($month) {
$mois = array('','Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Aout','Septembre','Octobre','Novembre','Décembre');
return $mois["$month"];
}

echo jour_fr(date("w",$date)).date(" j ",$date).mois_fr(date("n",$date));

voila :)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.