Переменные в layouts

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
SpiritAbsolute
Сообщения: 187
Зарегистрирован: 2013.12.29, 18:20
Откуда: Калининград
Контактная информация:

Переменные в layouts

Сообщение SpiritAbsolute »

Привет всем. Начал разбираться с yii. Почитал документацию по возможности пытаясь что то понять :)
Поставил basic приложение. Хочу поменять полностью внешний вид. Начать переделывать начальные представления, и по тому откуда приходят и как приходят данные вливаться и разбираться. Посмотрел главный шаблон в папке layouts main.php и сразу столкнулся с непониманием.

Код: Выделить всё

<?= Html::encode($this->title) ?>
Откуда приходит вот эта переменная. И что это за вид записи такой ? Это сокращение <?php ? Файл шаблона тоже является представлением? Из какого класса в него приходят данные? Например на страницу index.php в папке site, как я понимаю приходят из SiteController.

Код: Выделить всё

<?= Yii::$app->language ?>
Так же не понял, где вот этот класс находится к которому часто обращаются и получают данные вот таким образом...
И нормально вообще мне сюда писать с такими нубскими вопросами? Не нашел тут темы для новичков :) :oops:
Аватара пользователя
SpiritAbsolute
Сообщения: 187
Зарегистрирован: 2013.12.29, 18:20
Откуда: Калининград
Контактная информация:

Re: Переменные в layouts

Сообщение SpiritAbsolute »

Переменная $this->title в шаблон попадает из index.php, а туда из SiteController. Получается в шаблоне доступны данные через любое представление использующее шаблон?
webster
Сообщения: 36
Зарегистрирован: 2011.12.17, 13:17

Re: Переменные в layouts

Сообщение webster »

Установите нормальный редактор, наподобие phpstorm и изучайте где какие переменные и свойства расположены. Хотя если вы не знакомы даже с <?= код для вас будет не самым элементарным. К слову это сокращенный вариант <?php echo
whisperer
Сообщения: 9
Зарегистрирован: 2014.06.07, 19:25

Re: Переменные в layouts

Сообщение whisperer »

на страницу Index.php приходят те данные, что переданы в render() в контроллере.
$this->title не передается через контроллер, а настраивается в самом index.php, тем самым определяя title для вывода в main.php

пока документация скудная и сырая, тут у всех вопросов будет больше чем ответов, так что норм. хотя, конечно, что такое шорт теги, знать надо
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Переменные в layouts

Сообщение maleks »

SpiritAbsolute писал(а):Переменная $this->title в шаблон попадает из index.php, а туда из SiteController. Получается в шаблоне доступны данные через любое представление использующее шаблон?
в шаблоне есть же подсказка, что $this в нем - это объект Вида.
Так же не понял, где вот этот класс находится
это класс yii\web\Application, экземпляр которого создается из точки входа index.php.
Ответить