Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 14-01-2009 14:58:38

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

[Résolu][Zend_Date ZF1.6] utilisation avec Zend_Locale

Bonjour,

Je ne comprend pas un truc qui devrait pourtant être simple.

J'ai un plugin qui initialise la langue à utiliser.

Je définis donc dans ce plugin une locale, puis suite à ça je crée un objet date que je stocke dans le registre :

Code:

...
...
$z_locale = new Zend_Locale($locale);
...
...
$translate->setLocale($z_locale);
Tight_Registry::set('Tight_Locale', $z_locale);
...
...
Zend_Loader::loadclass('Zend_Date');
$z_date = new Zend_Date();
$z_date->setLocale($z_locale);    
Tight_Registry::set('Tight_Date', $z_date);
...
...

Plus tard, je souhaite recevoir en automatique la date au bon format en fonction de la langue, je fais donc simplement par ex.:

Code:

$une_date = '2009-07-01';
$t_date = Tight_Registry::get('Tight_Date'); 
$t_date->set($une_date, 'yyyy-MM-dd');
$str_date = $t_date->get();

Sauf que je récupère visiblement un timestamp au lieu d'une date au format correspondant à ma locale.

J'ai lu la doc à ce sujet, et je ne trouve pas vraiment de réponse.

Une idée ? Peut-être que je n'utilise pas tout ça comme il faudrait.


Merci,

A+ benjamin.

Dernière modification par Delprog (14-01-2009 15:16:33)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#2 14-01-2009 15:10:40

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: [Résolu][Zend_Date ZF1.6] utilisation avec Zend_Locale

Au temps pour moi.

En affichant sur la sortie :

Code:

Zend_Locale_Format::getDateFormat(Tight_Registry::get('Tight_Locale'));

Je me rend compte que le format correspond bien à ma locale, par exemple en fr_FR :

Code:

d MMM yyyy

J'ai fait le tour des constantes Zend_Date::DATE* dans la méthode get(), mais je n'arrive pas à avoir mieux que : jj/mm/aa, alors que pour le fr_FR je voudrais jj/mm/aaaa.

Je vais donc me démerder pour rendre paramétrable le format de date pour chaque locale dans mon fichier ini de paramètres.


A+ benjamin.

Dernière modification par Delprog (14-01-2009 15:10:51)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

#3 14-01-2009 20:16:28

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: [Résolu][Zend_Date ZF1.6] utilisation avec Zend_Locale

Hello,

Tu peux toujours aller dans /library/Zend/Locale/Data/fr.xml, tu cherches 'gregorian' et format de date de type 'short' ce qui doit correspondre à dd/MM/yy et tu le modifies en dd/MM/yyyy. Ce n'est bien sûr pas recommandé smile car à chaque changement de version du ZF, tu devras refaire la manip.

Le ZF utilise le CLDR (http://unicode.org/cldr/), 'dd/MM/yy' est donc le format standard reconnu.

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#4 16-01-2009 15:18:15

Delprog
Administrateur
Date d'inscription: 29-09-2008
Messages: 670

Re: [Résolu][Zend_Date ZF1.6] utilisation avec Zend_Locale

Ouais bof smile

Et dériver tout le bordel juste pour ça....il faut avoir envie.

Pour l'instant ce sera l'année sur 2 chiffres jusqu'à ce qu'un client m'en fasse un procès :p

Dernière modification par Delprog (16-01-2009 15:46:03)


http://www.anonymation.com/ - anonymation - Studio de création.
http://code.anonymation.com/ - anonymation - blog - développement et architecture web

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages