Comment changer la langue de la date

leyemel Messages postés 1 Statut Membre -  
ElementW Messages postés 5690 Statut Contributeur -
je veux que la date de mon application s'affiche en français et je parviens pas
je par exemple que cela affiche ( Jeudi 03 juillet 2014 13: 15)
voici le code:
<div class="art-header-jpeg"></div>
<div align="right"><?php echo date('l d F Y H:i A');?> | <strong>Bienvenue :<?php if(isset($_SESSION['login'])){echo $_SESSION['login'];}?></strong>
<a href="index.php"><img src="images/deconnexion.png" width="150" height="15" alt="Deconnexion" longdesc="images/deconnexion.png" style="float:right"/></a>
</div>

3 réponses

DDD
 
http://www.laissemoichercherca.com/?q=php%20afficher%20date%20fran%C3%A7ais
0
zermat Messages postés 160 Statut Membre 16
 
Essayez:

<?php
setlocale(LC_TIME,'fr_FR'); // ou setlocale(LC_TIME,'fra'); sur Windows
echo strftime('%l %d %F %Y %H:%M %A');
?>
0
Stanislas Poisson Messages postés 775 Statut Membre 66
 
Bonjour,

Il suffit de faire une substitution de la langue Anglaise vers la langue française.

Insiprer vous de la classe (vieille, très vieille) que j'ai proposer ici. https://forums.commentcamarche.net/forum/affich-30438272-afficher-la-bonne-heure-php#p30440823
0
ElementW Messages postés 5690 Statut Contributeur 1 224
 
C'est pas performant du tout et ça fait plus hack bien moche qu'autre chose dans le cas où un coup de petit
setlocale
fait l'affaire...
0
Stanislas Poisson Messages postés 775 Statut Membre 66
 
Sachant que date() ne donne que des informations en anglais, je ne voit pas bien ce que setlocale viens faire.

L'interet d'utiliser setlocale c'est d'utiliser du mktime donc s'il passe en setlocale, il devras modifier tout son script pour passer en mktime et donc une date en bdd de type 2014-07-03 17:00:00 devras d'abord être décomposer pour remplir le mktime, je vois donc pas l'interêt.

Quand au fait que c'est moche, à tu lu la ligne supérieur au lien? C'est un vieux, très vieux, très très vieux script que j'ai poster afin de s'inspirer de la méthode.
0
ElementW Messages postés 5690 Statut Contributeur 1 224
 
"Sachant que date() ne donne que des informations en anglais": j'ai dit setlocale mais n'est en effet pas précisé que c'est pas date qu'il faut prendre alors mais strftime.
"mktime et donc une date en bdd": je vois pas ce que tu racontes, mktime (au même titre que strtotime d'ailleurs) se contrefichent de la locale paramétrée, et sont dans le sens représentation->Timestamp, pas l'inverse. Et les BDDs sortent toujours la date dans un même format, dépendant de l'implémentation et de la config/paramètres de connexion qui devaient toujours être les mêmes. Donc la locale n'affecte rien ici. Et dans l'autre sens, même si la locale n'est pas censée changer, il faut toujours préciser le format (oui on n'est pas à l'abri d'implémentations foireuses où ça différerait).
"à tu lu la ligne supérieur au lien": oui, mais c'est pas une raison pour pas critiquer ^^
0