Page 1 sur 1
date en français
Posté : 13 juil. 2005, 19:14
par Janyss
Bonjour,
Je viens de changer de serveur.
Je veux juste afficher la date du jour en français.
J'ai fait ça :
//On bascule en date francaise
setlocale (LC_TIME, 'fr_FR');
//On affiche la date
echo strftime("%A %d %B %Y");
Ca marchait bien.
Sur oléane, ça reste en anglais. pourtant j'ai bien mis le set locale ???
Merci de votre aide.
Posté : 13 juil. 2005, 19:16
par fggdm
Salut,
Il faut tester les valeurs de retour des fonctions quand il y en a !
setlocale() retourne un string ou FALSE. Je pense qu'avec un petit test tu apprendrais des choses...
Posté : 13 juil. 2005, 19:17
par rami
Issu de la doc:
La valeur retournée par setlocale() dépend du système sur lequel PHP est installé.
Je suppose que sur ton nouveau serveur, c'est en anglais

Et donc, je fais comment pour avoir du français ?
Posté : 13 juil. 2005, 20:40
par Janyss
Et donc, je fais comment pour avoir du français ?
Merci
on ne peut pas avoir la date en français
Posté : 14 juil. 2005, 11:25
par Janyss
Bonjour,
si mon serveur est en anglais. Dois-je faire un script pour traduire ?
Merci à vous

plutôt dur !
Posté : 14 juil. 2005, 15:22
par janyss
Re,
J'ai bien du mal.
D'abord je suis chez Oléane, ce qui n'est pas le meilleur postulat.
Ensuite, quand j'ai un pb de script, le serveur ne me donne pas de message d'erreur comme chez nexen par exemple !
J'essaye de transformer : 2005-05-23 en samedi 23 mai 2005.
Sachant que je ne peux pas utiliser setlocale.
Je suis en train de me perdre dans un script avec des tableaux ...
gr
un peu d'aide svp ?

Posté : 14 juil. 2005, 17:38
par Cyrano
Tiens, fais toi une petite fonction maison avec quelque chose comme ça:
<?php
$date_originale = "2005-07-14";
$date_en = explode("-",$date_originale);
switch ($date_en[1])
{
case 01 : $mois = "janvier"; break;
case 02 : $mois = "février"; break;
case 03 : $mois = "mars"; break;
case 04 : $mois = "avril"; break;
case 05 : $mois = "mai"; break;
case 06 : $mois = "juin"; break;
case 07 : $mois = "juillet"; break;
case 08 : $mois = "août"; break;
case 09 : $mois = "septembre"; break;
case 10 : $mois = "octobre"; break;
case 11 : $mois = "novembre"; break;
case 12 : $mois = "d&éacute;cembre"; break;
}
$date_fr = $date_en[2]." ".$mois." ".$date_en[0];
echo $date_fr;
?>
oui mais tout de même
Posté : 14 juil. 2005, 19:19
par Janyss
Bonjour et merci.
C'est en fait ce que j'ai fait.
Deux tableaux pour réaffecter le jour de la semaine (samedi) et le mois, en français.
Je trouve tout de même fou qu'Oléane n'installe pas une version "compatible" avec le setlocale().
Par ailleurs, le fait qu'aucun message d'erreur ne s'affiche lors d'un pb php, est-ce que cela vient de la version du php (4.2 je crois) ou d'une faignantise d'Oléane ?
Merci à vous.
(on est mieux chez nexen... mais je n'avais pas le choix).
Posté : 14 juil. 2005, 19:49
par Cyrano
Pour les messages d'erreur, ça dépend de la configuration de display_error dans le php.ini : sur un serveur de production, il est rare qu'on affiche tout, c'est pour ça qu'il vaut mieux avoir une installation locale affichant tout (E_ALL) pour ensuite envoyer sur le serveur de production quand on a plus d'erreur sur sa propre machine..
Posté : 16 juil. 2005, 01:05
par Corentin
Pour avoir tes messages d'erreurs met sa sur ta premiere ligne de ton script:
error_reporting(E_ALL & ~E_NOTICE);
Normalement les hebergeurs permettent d'utiliser cette fonction.
Re: oui mais tout de même
Posté : 16 juil. 2005, 11:58
par pjl
Par ailleurs, le fait qu'aucun message d'erreur ne s'affiche lors d'un pb php, est-ce que cela vient de la version du php (4.2 je crois) ou d'une faignantise d'Oléane ?
Ce serait le meilleur moyen pour eux de se facher avec 80% de leurs clients.
Je doute que leurs clients apprécient de ne plus voir leurs sites fonctionner du jour au lendemain.
