2015
10-22

Yii2.0視頻第十三講——深入理解View——布局篇(Layout )

清華大佬耗費(fèi)三個(gè)月吐血整理的幾百G的資源,免費(fèi)分享!....>>>

布局變量哪里有
  • Controller里面定義了布局變量($layout)
  • Module里面定義了布局變量($layout)
    其中的web\application里面定義了$layout='main',所以在沒(méi)有設(shè)置layout的時(shí)候 會(huì)使用默認(rèn)的main.php布局文件


layout變量值
$this->layout=false;// null or '@app/views/layouts/main.php' or '/main' or 'main'
  • false,不使用布局文件
  • null,使用Module中定義的布局文件
  • 字符串,指定布局文件
            a、別名開頭,指定布局文件路徑
            b、/開頭,指定app下面的布局文件
                    $this->layout='/main' //'/test-main'
            c、使用當(dāng)前Module里面的布局文件


layout查找規(guī)則
  • 先查看當(dāng)前Controller里面有沒(méi)有定義布局變量
  • 如果為Null,查找所在Module里面定義的布局變量(包括父級(jí)Module)
  • 如果為false,則不使用布局文件
  • 如果為字符串,則直接使用


布局的嵌套

在布局文件里面使用beginContent

//指定view 文件(別名或者路徑)
<?php $this->beginContent('@app/views/layouts/main.php'); ?>
<?php echo $content;?>
<?php $this->endContent(); ?>


布局高級(jí)使用
讓布局文件支持多個(gè)變量

https://github.com/yiifans/luluc ... ts/InhritLayout.php


在線播放

下載地址

掃碼二維碼 獲取免費(fèi)視頻學(xué)習(xí)資料

編程學(xué)習(xí)