передать переменные из контроллера для просмотра в Yii - PullRequest
6 голосов
/ 04 марта 2012

Я не могу использовать переменные, указанные в контроллере в соответствующем представлении.Вот мой код:

public function actionHelloWorld()
    {

        $this->render('helloWorld',array('var'=>'this is me'));
    }

В helloWorld.php (просмотреть файл):

<h1>Hello, World!</h1>
<h3><?php echo $var; ?></h3>

Он выводит только «Hello, World!», Похоже, что $ var недоступенв представлении.Кто-нибудь?

Ответы [ 2 ]

5 голосов
/ 04 марта 2012

«var» - зарезервированное слово в PHP, поэтому вы не сможете использовать это имя для своей переменной. Смотри: http://www.php.net/manual/en/reserved.keywords.php

Попробуйте использовать другое имя переменной, и оно должно работать.

4 голосов
/ 05 марта 2012

, которое должно работать, хотя с любым именем переменной, отличным от 'var'

, обратите внимание, что 'this' в представлении относится к его контроллеру, поэтому, если у вас есть открытая переменная-член или метод в контроллере, вы можете получить к нему доступ из представления:

MyController.php:

class MyController extends CController{
  public $foo = 'bar';

  public function actionIndex(){
    $this->render('index');
  }
}

index.php:

<?php 

echo $this->foo; //result is bar

?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...