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

Zend Framework PHP Discussion :

Accès à un objet


Sujet :

Zend Framework PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2010
    Messages : 111
    Par défaut Accès à un objet
    Bonjour,

    Question de débutant mais voilà je déclare cette méthode dans le bootstrap

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        	$translate = new Zend_Translate('gettext',
    					APPLICATION_PATH . "/langs/",
    					null,
    					array('scan' => Zend_Translate::LOCALE_DIRECTORY));
     
     
    		$registry = Zend_Registry::getInstance();
    		$registry->set('Zend_Translate', $translate);
    		$translate->setLocale('en');
    Comment fais je pour avoir accès à cette instance de Zend Translate depuis une vue ?

    Suite je obligé de faire ça dans chacune des méthode ayant besoin de cette instance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $translate = Zend_Registry::get('Zend_Translate');
    $this->view->translate = $translate;
    Merci pour votre aide

  2. #2
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Il y a un helper de vue qui gère ça : http://framework.zend.com/manual/en/...tial.translate

    A partir du moment où tu as définis une entrée du registre Zend_Translate, cet helper l'utilise simplement en utilisant $this->translate(...) depuis ta vue.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2010
    Messages : 111
    Par défaut
    Bonjour,

    Merci pour votre réponse, j'essaie de faire avec le helper mais il y a qq chose qui ne fonctionne pas et je ne comprend pas...

    Si je met dans mon bootstrap

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		$adapter = new Zend_Translate('gettext',
    					APPLICATION_PATH . "/langs/",
    					null,
    					array('scan' => Zend_Translate::LOCALE_DIRECTORY));
     
     
    		$registry = Zend_Registry::getInstance();
    		$registry->set('Zend_Translate', $adapter);
    et que je met à la suite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $adapter->plural('table', 'tables', 2, "fr");
    Ça fonctionne, il détecte bien la méthode "plural" et la traduction est faite...

    Idem, si je met dans une vue, le code ci dessous ça fonctionne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->translate(" mon expression à traduire");
    En revanche, si je met dans une vue, ce code ça ne fonctionne plus, j'ai un message d'erreur disant que j'appelle une méthode "plural" inconnue...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo $this->translate->plural('table', 'tables', 2, "fr");
    Est ce que j'ai mal fait quelque chose ?

  4. #4
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Effectivement, le view helper ne fournit l'accès qu'à la méthode translate. Tu pourrais t'en sortir dans ta vue avec quelque chose du genre je pense :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->getHelper('translate')->getTranslator()->plural(...);
    Mais il y a plus simple si j'en crois cette doc :
    http://framework.zend.com/manual/fr/...plurals.modern

    Il est visiblement possible d'utiliser la méthode translate pour la traduction des pluriels en passant un tableau en premier paramètre, ça devrait te permettre d'utilise $this->translate() depuis ta vue.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2010
    Messages : 111
    Par défaut
    Merci pour ta réponse.

    Effectivement ça fonctionne avec un array mais le problème c'est que poEdit ne détecte pas les termes si je fonctionne comme cela

    M'enfin là j'ai compris mon problème et je vais me bricoler une solution

  6. #6
    Membre chevronné

    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2003
    Messages : 253
    Par défaut
    Si j'ai pu aider un peu, tant mieux. Pense au tag résolu quand ça sera réglé à 100%

Discussions similaires

  1. Problème d'accès à un objet!
    Par chrono23 dans le forum C++
    Réponses: 21
    Dernier message: 26/06/2006, 20h21
  2. [VBA-E] Accès à l'objet Range (oui puis non ?)
    Par gapgap dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/05/2006, 20h00
  3. Réponses: 1
    Dernier message: 25/03/2006, 17h53
  4. [c#] Méthode d'accès aux objets de ma form1
    Par SDuh dans le forum Windows Forms
    Réponses: 5
    Dernier message: 21/03/2006, 11h21
  5. [TGroupBox] Accès aux objets
    Par JediKerian dans le forum Composants VCL
    Réponses: 3
    Dernier message: 04/04/2003, 14h34

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