首先可以看看http://document.thinkphp.cn/manual_3_2.html#template_layout里面的說明
bootstrap布局樣式可以參考:v3.bootcss.com
然后我們再進行下一步的理解:
1.在config文件中添加如下配置
1 'LAYOUT_ON'=>true, 2 'LAYOUT_NAME'=>'layout',
2.開啟了layout布局之后我們所展示的代碼就需要變化了
首先,我們要在view下面創建一個文件夾Public,文件夾里面包含兩個文件分別是header.html 和 footer.html
然后,我們把下載好的模板文件中的index頁面的頭部和尾部分別放進上面兩個對應的.html文件里面,並且把content部分刪掉
再次,直接在view底下創建一個文件為:layout.html
具體如下:

這個時候我們需要在layout.html里面做一些代碼編輯
如圖:
注意:你改變以后的header和footer要把樣式全部引用上,並且注意頁面分離,header里面只放頭菜單等等,footer里面放的是內容下面的東西
如圖:

這樣,頁面布局就已經搭建好了,這個時候在配合控制器用一下:
比如我在index控制器寫了如下代碼:
1 <?php 2 namespace Home\Controller; 3 use Think\Controller; 4 class IndexController extends Controller { 5 public function index(){ 6 $this->display('index'); 7 } 8 9 public function test(){ 10 $this->display('test'); 11 } 12 }
這樣的話 就要在view下面創建一個名字為Index的文件夾里面放一個index.html和test.html文件
然后,我們編輯一下這兩個文件:
index.html
<div style="margin-top:20px;"> 這是一個研究成功的布局文件! </div>
test.html
<div id="main" name="main"> 在不開啟LAYOUT_ON布局模板之前,會直接渲染 Application/Home/View/User/add.html 模板文件,開啟之后,首先會渲染Application/Home/View/layout.html 模板,布局模板的寫法和其他模板的寫法類似,本身也可以支持所有的模板標簽以及包含文件,區別在於有一個特定的輸出替換變量{__CONTENT__},例如,下面是一個典型的layout.html模板的寫法: 讀取layout模板之后,會再解析User/add.html 模板文件,並把解析后的內容替換到layout布局模板文件的{CONTENT} 特定字符串。 當然可以通過設置來改變這個特定的替換字符串,例如: 'TMPL_LAYOUT_ITEM' => '{__REPLACE__}' 一個布局模板同時只能有一個特定替換字符串。 采用這種布局方式的情況下,一旦User/add.html 模板文件或者layout.html布局模板文件發生修改,都會導致模板重新編譯。 如果需要指定其他位置的布局模板,可以使用: 'LAYOUT_NAME'=>'Layout/layoutname', 就表示采用Application/Home/View/Layout/layoutname.html作為布局模板。 </div>
這些內容是隨便添加的,這個時候看效果:



如果不想讓布局信息出現在頁面,比如說登錄頁面,這肯定是不能有已經布局好的菜單啊什么的把
所以

注意了嗎?我加了一個{__NOLAYOUT__}
這樣就可以了
