IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

afficher la date en fonction de la culture utilisateur [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 267
    Par défaut afficher la date en fonction de la culture utilisateur
    Bonjour, je souhaite avoir le format dd/mm/yyyy pour 'fr' et mm/dd/yyyy pour 'en' .
    pour le moment je fait commen ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo format_date($mon _objet->getDate(),'d',$culture);
    mais le problème est que le format 'd' m'affiche 26/05/10 pour 'fr' et 5/26/10 pour 'en' alors que je souhaiterai avoir 26/05/2010.

    sinon il y a le format 'p' qui m'affiche 26 mai 2010 mais ce n'est pas ce que je souhaite obtenir.

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    ???

    Je ne suis pas sur de comprendre.

    Tu veux afficher un format de date "à la française" si la culture de l'utilisateur est anglais !

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 267
    Par défaut
    non je souhaite avoir en français dd/mm/yyyy au lieu de dd/mm/yy que j'obtiens actuellement avec l'argument 'd'

    sinon le format anglais c'est pas mm/dd/yyyy? c'est juste mm/dd/yy?

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Il y a mieux.

    Il faut que l'extension intl soit activée dans ton PHP.

    Tu as alors, entre autre un objet intlDateFormater pour formater les dates (il y a un autre objet sympa pour les nombres...)

    Ton code devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
          $affDate = new IntlDateFormatter( $this->getUser()->getCulture(), IntlDateFormatter::FULL, IntlDateFormatter::NONE);
          echo $affDate->format($MonObjet->getDate());
    En pratique, dans symfony, il faudra couper le code en deux, l'initialisation de l'objet affDate dans le contrôleur (valable pour tous les affichage de date du formulaire) et la partie echo dans le template. Seul entorse au MVC, c'est le contrôleur qui décide si la date s'affiche en long ou en cours.

    Ce n'est qu'une minuscule facette de l'objet intlDateFormater, mais c'est celle qui nous intéresse.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 267
    Par défaut
    je ne connaissais pas cette méthode
    merci pour ton aide

  6. #6
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    C'est une nouvelle classe d'objet.

    Attention PHP >= 5.2, 5.3 recommandé.

    Avantage, tu peux étendre l'objet de base PHP pour le personnaliser où lui rajouter des méthode, en faire une classe PHP...

    Si tu regardes la dic, tu trouveras d'autre objet dans le même module pour les chiffres notamment.

    On peut utiliser en procédural ou en objet, j'ai un faible pour l'objet.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/11/2011, 16h23
  2. [MySQL] Afficher enregistrement dynamiquement en fonction de la date du jour
    Par Cedrinho dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 17/08/2010, 06h56
  3. Réponses: 3
    Dernier message: 03/06/2010, 16h32
  4. [Dates] Afficher une adresse en fonction de la date
    Par jbtz64 dans le forum Langage
    Réponses: 5
    Dernier message: 28/05/2008, 22h29
  5. afficher le jour en fonction d'une date
    Par oceane751 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 05/03/2006, 22h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo