1. 程式人生 > >ThinkPHP快速入門4-路由,檢視,變數輸出

ThinkPHP快速入門4-路由,檢視,變數輸出

路由

路由定義
三個配置引數:
1. URL_ROUTER_ON:開啟路由,設定為true後路由規則定義生效
2. URL_ROUTE_RULES:路由規則定義
3. URL_MAP_RULES:靜態路由(URL對映)定義

應用(或者模組)配置檔案中開啟路由:
'URL_ROUTER_ON' => true, //開啟路由

檢視

模板定義
每個模組的模板檔案是獨立的,為了對模板檔案更加有效的管理,ThinkPHP對模板檔案進行目錄劃分,預設的模板檔案定義規則是:

檢視目錄/[模板主題/]控制器名/操作名+模板字尾

預設的檢視目錄是模組的View目錄(模組可以有多個檢視檔案目錄,這取決於你的應用需要),框架的預設檢視檔案字尾是.html。
例如User控制器的add操作對應的模板檔案就應該是:
./Application/Home/View/User/add.html

模板渲染

display('[模板檔案]'[,'字元編碼'][,'輸出型別'])

模板檔案的寫法支援下面幾種:
1 不帶任何引數 ,自動定位當前操作的模板檔案
2 [模組@][控制器:][操作], 常用寫法,支援跨模組 模板主題可以和theme方法配合
3 完整的模板檔名 直接使用完整的模板檔名(包括模板字尾)

如果需要獲取渲染模板的輸出內容而不是直接輸出,可以使用fetch方法

 fetch('模板檔案')

模板檔案的呼叫方法和display方法完全一樣,區別就在於fetch方法渲染後不是直接輸出,而是返回渲染後的內容

渲染內容
show方法來渲染輸出:

show('渲染內容'[,'字元編碼'][,'輸出型別'])

模板賦值
assign賦值:

$this->assign('name',$value);

assign方法必須在display和show方法之前呼叫,並且系統只會輸出設定的變數,其它變數不會輸出(系統變數例外)
如果要同時輸出多個模板變數,可以使用下面的方式:

$array['name']    =    'thinkphp';
$array['email']   =    '[email protected]';
$array['phone']   =    '12335678';
$this
->assign($array);

相關推薦

ThinkPHP快速入門4-路由檢視變數輸出

路由 路由定義 三個配置引數: 1. URL_ROUTER_ON:開啟路由,設定為true後路由規則定義生效 2. URL_ROUTE_RULES:路由規則定義 3. URL_MAP_RULES:靜態路由(URL對映)定義 應用(或者模組)

ThinkPHP快速入門3-連貫操作變數

連貫操作 例:假如我們現在要查詢一個User表的滿足狀態為1的前10條記錄,並希望按照使用者的建立時間排序 ,程式碼如下: $User->where('status=1')->order('create_time')->limit(10

django學習記錄之建立應用檢視路由

1.在建立好虛擬環境之後,使用: django-admin  startproject my_project 會自動的生成一個工程目錄如下: settings.py 是專案的整體配置檔案。 urls.py 是專案的URL配置檔案。 w

python之Django框架篇-路由系統檢視模板ORM複習

1. Urls.py 路由系統: 正則 分組匹配 --> 位置引數 分組命名匹配 --> 關鍵字引數 分級路由 include 給路由起別名 name="xx" 反向解析url view

laravel5.2路由控制器檢視模型

                         laravel5.2路由,控制器,檢視,模型 1  路由(App\Http\routes.php)

SignalR快速入門 ~ 仿QQ即時聊天訊息推送單聊群聊多群公聊(基礎=》提升)

 SignalR快速入門 ~ 仿QQ即時聊天,訊息推送,單聊,群聊,多群公聊(基礎=》提升,5個Demo貫徹全篇,感興趣的玩才是真的學) 應用情景之一:   沒太多連續的時間來研究SignalR,所以我把這篇文章分了三個階段: 第一個階段,簡單使用,熟悉並認識SignalR 第二個階段,實現

hql的通用分頁檢視原生程式碼

BaseDAO package com.zking.eight.util; import java.util.Collection; import java.util.List; import java.util.Map; import org.hibernate

Oracle中發生表加鎖、死鎖的原因檢視與解決方法

一.表加鎖、死鎖出現的現象 1.對資料庫操作update,insert,delete時候,資料庫無法更新,操作等待時長,操作結果不發生改變 2.在程式中,底層(資料訪問層)操作時候,不成功,資料庫連線超時,無法操作,或者操作等待時長等現象 【加鎖的原理】:比如一個操作在進行修改一表,它

Mysql05隔離級別檢視索引事務左右連線

Mysql資料庫day05   行內檢視子查詢 l  子查詢在from後面 l  從一個查詢的查詢結果,再查詢   select … from (select …) t  

查詢資料庫中當前使用者下的所有表儲存過程檢視觸發器

user_objects是oracle字典表的試圖,他包含了通過DDL建立的所有物件。表,試圖,索引。。等 all_table,  dba_table  , user_table   同理 Select object_name From user_obj

3D空間中的視野世界檢視投影,World,View,Projection的作用和區別

D3D11_VIEWPORT vp; vp.Width = (FLOAT)m_bufferWidth; vp.Height = (FLOAT)m_bufferHeight; vp.MinDepth = 0.0f; vp.MaxDepth = 1.0f; vp.TopLeftX = 0; vp

【swoole快速入門4】建立WebSocket伺服器

程式程式碼 ws_server.php //建立websocket伺服器物件,監聽0.0.0.0:9502埠 $ws = new swoole_websocket_server("0.0.0.0", 9502); //監聽WebSocket連線開啟事件 $ws->

事務檢視索引備份和恢復

什麼是事務 事務(TRANSACTION)是作為單個邏輯工作單元執行的一系列操作 多個操作作為一個整體向系統提交,要麼都執行、要麼都不執行  事務是一個不可分割的工作邏輯單元  轉賬過程就是一個整體 它需要兩條UPDATE語句來完成,這兩條語句是一個整體 如果其中任一條出現

SQL語句優化索引檢視觸發器儲存過程函式等。

    一,SQL優化        主要解決海量資料操作時的全表搜尋,所以減少不必要的全表搜尋是SQL優化的主要目的,下面總結一下常用的優化有哪些:        1,避免在where條件中使用!=或者<>,這樣會是的查詢放棄索引而進行全域性掃描       

Mysql表中資料的新增檢視 修改 刪除

新增 insert into tablename; 檢視select * from tablename;  修改 update 表名 set 欄位=值[where條件];  刪除 delete from 表名[where 條件]; 新增資料 方案一:

【MySQL】mysql面試相關問題(正規化事物檢視索引)

三大正規化: 1、單個欄位不能繼續拆分,(個人理解:列具有原子性) 2、在第一正規化的基礎上,每個表只描述一件事情。可以理解為第二正規化就是要有主鍵,要求其他欄位都依賴於主鍵。 為什麼要有主鍵——沒有主鍵就沒有唯一性,沒有唯一性在集合中就定位不到這行記錄,所以要有主鍵。 其他欄位為什

Spread for Windows Forms快速入門(4)---常用的單元格型別(上)

單元格型別定義了在單元格中呈現的資訊的型別,以及這種資訊如何顯示,使用者如何與其進行互動。單元格型別可以被賦給單個的單元格,整行或者整列。 使用者可以使用兩種不同的單元格型別對錶單中的單元格進行設定: 一種是可以簡單地關聯於單元格的文字格式,另一種就是顯示控制元件或者圖形化

配置sparksql讀hivedataframe和RDD將RDD轉換成Dataframe檢視withcolumn

文章目錄 退出spark-shell 使用spark自帶檔案建立dataframe 退出安全模式 配置spark讀hive 1.pom檔案增加 2.resource下加檔案 3.修改h

mysql中檢視儲存過程檢視函式

一:檢視儲存過程 1,show procedure status; --這個是檢視所有的 2,show create procedure proc_AllUser;  這個是檢視proc_AllUser這個儲存過程的具體資訊 3,select 'name' from

插入更新刪除資料索引檢視建立使用者修改當前使用者密碼

單表建立檢視:CREATE VIEW 檢視名稱(檢視中的欄位名1,欄位2..) AS SELECT 欄位1,欄位2...FROM 表名 WHERE 條件;多表建立檢視:CREATE VIEW 檢視名稱(檢視中的欄位名1,欄位2..) AS SELECT 欄位1,欄位2...FROM 表1,表2 WHERE 條