# 模板文件定義
[TOC]
在Thinkphp中每個模板都是獨立的,為了對模板文件更加有效的管理,Thinkphp對模板進行了目錄的劃分。
模板的定義規則:
```
視圖目錄/控制器名稱(小寫) 方法名稱(小寫) + 模板的后綴名
<?php
class index
{
function index()
{
return view();
}
}
?>
//默認的模板目錄view目錄
例子:view/index.html 正確的模板定義 必須遵循模板的定義規則
```
## 模板渲染
模板渲染的方法很多種,這樣看個人的習慣,我比較習慣與view的助手函數
view助手函數的格式:
```
return view('[模板文件]',['模板替換(數組)'])
```
## 模板布局
Thinkphp的模板引擎內置了布局模板功能,可以方便實現模板布局已經模板嵌套。這樣我們就可以把公共的靜態資源代碼專門放一個模板里面,這樣可以避免代碼重復也開發更簡潔一些。
全局配置方式:
```
return [
'template' =>[
'latout_on' =>true,
'layout_name' => 'layout',
];
];
//零時關閉模板布局
$this->view->engine->layout(false);
```
在application/模塊名稱/config.php 加入全局配置,只在此模塊中生效。且注意:如果使用了模板布局,在中間位置放一個特殊字符串`{__CONTENT__}`,表示此位置,替換為原始要訪問的頁面內容,注意:如果開啟全局布局,需要在模塊目錄的view視圖目錄,創建layout.html布局文件公共文件
## 其他整合
在文本文件中,各種輸出的方式
```
// 變量輸出
{$變量名}
// 數組輸出
{$變量名.鍵名}
// 輸出對象
{$變量名->屬性名}
// 循環輸出
{foreach $變量 as $v}
{/foreach}
// 條件判斷
{if ()}
{/if}
// 范圍判斷
{in name='id' value='1,2,3'}
{/in}
// 函數使用
{$變量名|函數名稱}
```
- 基礎
- 安裝PHP
- 語言基礎
- 變量
- 變量操作
- 超全局數組變量
- 變量作用域
- 變量傳值方式
- 常量
- 數據類型
- 運算符
- 流程控制
- 文件包含
- 錯誤處理
- 字符串操作
- 數組
- 函數
- 進階
- 面向對象
- 提高
- TP
- 安裝項目
- 框架基礎知識
- 命令創建模塊
- URL生命周期
- 路由操作
- Request請求類
- 參數綁定
- 依賴注入
- 模板操作
- 查詢操作
- 添加操作
- laravel
- ☆目錄結構
- CSRF攻擊
- ☆路由
- ☆控制器
- ☆請求類
- ☆視圖
- ☆模板繼承
- ☆表單驗證
- ☆DB類
- ☆模型
- ☆數據庫遷移
- 類型、修飾、索引
- ☆數據填充
- ☆數據分頁
- ☆session處理
- ☆中間件
- ☆緩存操作
- ☆文件上傳
- ☆接口操作
- ☆擴展插件
- restful
- 工作
- 工作記錄
- QQ登錄
- 新浪登錄
- 微信登錄
- sphinx搜索
- 數據庫
- MySQL
- ☆數據庫操作
- ☆數據表操作
- ☆數據的操作
- 待修改
- 優化
- 存儲引擎選擇
- 列表類型選擇
- 范式
- 慢日志查詢
- 精準時間記錄查詢
- 計劃任務 explain
- 索引
- 索與事務
- 查詢緩存
- 存儲過程
- 觸發器
- 分區
- 分表
- sphinx
- 讀寫分離
- 搜索優化
- 網站靜態化
- Memcache
- Mongodb
- Readis
- php使用redis
- 服務器
- Linux
- 目錄結構
- 常用命令
- VIM編輯器
- 用戶與用戶組
- 權限管理
- 運行級別
- 網絡模式
- ssh
- 軟件安裝
- 計劃任務
- Ubuntu
- 編譯PHP7.3
- 編譯MySQL
- 編譯Nginx
- apache虛擬機配置
- 安裝composer
- Nginx
- Git