<?php /* Допустим, есть у меня layout main.php вида */ ?>
...
<body>
<?php echo $content;?>
</body>
...
<?php /* Здесь все понятно, переменные в шаблон подставятся при рендере
конкретного вида в экшене:*/
public function actionIndex()
{
//...
$var = 'value';
$this->render('index', array('$var'=>$var)); }
?>
<?php /* Но как быть, если необходимо передать несколько переменных
в главный макет, а не в местное представление? */?>
...
<body>
<p><?php echo $var;?></p>
<?php echo $content;?>
</body>
...
<?php /* Приходит на ум очевидное решение создавать в контроллере
поля для передачи этих значений, и обращаться к ним
через $this в представлении: */
public $var = 'value';
public function actionIndex()
{
...
$this->var = 'value';
$this->render('index');
}
/* Будет ли это правильно, или есть более подходящие решения? */
?>
PD9waHAgLyog0JTQvtC/0YPRgdGC0LjQvCwg0LXRgdGC0Ywg0YMg0LzQtdC90Y8gbGF5b3V0IG1haW4ucGhwINCy0LjQtNCwICovID8+Ci4uLgo8Ym9keT4KCTw/cGhwIGVjaG8gJGNvbnRlbnQ7Pz4KPC9ib2R5PgouLi4KCjw/cGhwIC8qINCX0LTQtdGB0Ywg0LLRgdC1INC/0L7QvdGP0YLQvdC+LCDQv9C10YDQtdC80LXQvdC90YvQtSDQsiDRiNCw0LHQu9C+0L0g0L/QvtC00YHRgtCw0LLRj9GC0YHRjyDQv9GA0Lgg0YDQtdC90LTQtdGA0LUKCQnQutC+0L3QutGA0LXRgtC90L7Qs9C+INCy0LjQtNCwINCyINGN0LrRiNC10L3QtToqLwpwdWJsaWMgZnVuY3Rpb24gYWN0aW9uSW5kZXgoKQp7CgkvLy4uLgoJJHZhciA9ICd2YWx1ZSc7CgkkdGhpcy0+cmVuZGVyKCdpbmRleCcsIGFycmF5KCckdmFyJz0+JHZhcikpOwp9Cj8+Cgo8P3BocCAvKiDQndC+INC60LDQuiDQsdGL0YLRjCwg0LXRgdC70Lgg0L3QtdC+0LHRhdC+0LTQuNC80L4g0L/QtdGA0LXQtNCw0YLRjCDQvdC10YHQutC+0LvRjNC60L4g0L/QtdGA0LXQvNC10L3QvdGL0YUKCQnQsiDQs9C70LDQstC90YvQuSDQvNCw0LrQtdGCLCDQsCDQvdC1INCyINC80LXRgdGC0L3QvtC1INC/0YDQtdC00YHRgtCw0LLQu9C10L3QuNC1PyAqLz8+Ci4uLgo8Ym9keT4KCTxwPjw/cGhwIGVjaG8gJHZhcjs/PjwvcD4KCTw/cGhwIGVjaG8gJGNvbnRlbnQ7Pz4KPC9ib2R5PgouLi4KCjw/cGhwIC8qINCf0YDQuNGF0L7QtNC40YIg0L3QsCDRg9C8INC+0YfQtdCy0LjQtNC90L7QtSDRgNC10YjQtdC90LjQtSDRgdC+0LfQtNCw0LLQsNGC0Ywg0LIg0LrQvtC90YLRgNC+0LvQu9C10YDQtQoJCdC/0L7Qu9GPINC00LvRjyDQv9C10YDQtdC00LDRh9C4INGN0YLQuNGFINC30L3QsNGH0LXQvdC40LksINC4INC+0LHRgNCw0YnQsNGC0YzRgdGPINC6INC90LjQvAoJCdGH0LXRgNC10LcgJHRoaXMg0LIg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Lg6ICovCnB1YmxpYyAkdmFyID0gJ3ZhbHVlJzsKcHVibGljIGZ1bmN0aW9uIGFjdGlvbkluZGV4KCkKewouLi4KJHRoaXMtPnZhciA9ICd2YWx1ZSc7CiR0aGlzLT5yZW5kZXIoJ2luZGV4Jyk7Cn0KLyog0JHRg9C00LXRgiDQu9C4INGN0YLQviDQv9GA0LDQstC40LvRjNC90L4sINC40LvQuCDQtdGB0YLRjCDQsdC+0LvQtdC1INC/0L7QtNGF0L7QtNGP0YnQuNC1INGA0LXRiNC10L3QuNGPPyAqLwo/Pg==