2011-03-31 2 views
3

Je suis nouveau à zend et OOP en général. J'ai une indexAction avec une variable que je dois passer à la vue. J'ai déclaré la variable comme publique et j'ai pensé que je pourrais alors obtenir la variable dans la vue en utilisant $this->variable mais cela ne fonctionne pas. Comment puis-je passer une variable d'indexAction à la vue?zend framework obtenir une variable du contrôleur pour voir

+0

lorsque vous utilisez cette $, il devrait être dans les méthodes de la classe. –

Répondre

11

Dans indexAction, vous devez l'affecter à l'instance de vue. simplement faire:

$this->view->something = "foo"; 

et à votre avis:

<?php echo $this->something ?> 
+0

parfait merci –

1

Je préfère la méthode Assign dans le contrôleur car il me permet d'ajouter bien plusieurs variables à la vue

$this->view->assign('firstname', 'Peter') 
      ->assign('lastname', 'Miller'); 

et la vue que vous pouvez utiliser l'étiquette ouverte courte à echo choses. Et n'oubliez jamais de citer des choses.

<body> 
    Firstname: <?= $this->escape($this->firstname); ?><br /> 
    Lastname: <?= $this->escape($this->lastname); ?> 
</body> 
1
$this->view->assign(array(
    'var1' => $value1, 
    'var2' => $value2 
)); 
Questions connexes