thinkphp5的$this->fetch()


參考:
https://blog.csdn.net/fight_tianer/article/details/78602711
http://www.thinkphp.cn/topic/38624.html
https://www.kancloud.cn/manual/thinkphp5/118114

模板:網頁長什么樣子。
模板文件:html
模板渲染:打開或加載數據到html文件。

thinkphp5的模板渲染有兩種情況:

a、繼承了think\Controller 用return $this->fetch();

b、沒有繼承think\Controller 用return view();


其中 $this->fetch()和view()的用法一樣

以第二種為例,對其進行分析

1、無參數。return view();

此時會自動定位模板文件:
當前模塊/默認視圖目錄(view)/以當前控制器(小寫)為名的目錄/當前方法(小寫).html
application/index(當前模板)/view(默認視圖文件夾)/login(文件夾,與控制器同名,不過小寫)/index.html(當前方法.html)

2、有參數。

a、return view(‘edit’);//跨模板渲染文件。模板渲染文件(edit.html)

此時會自動定位模板文件:
當前模塊/默認視圖目錄(view)/以當前控制器(小寫)為名的目錄/參數(小寫).html
application/index(當前模板)/view(默認視圖文件夾)/login(文件夾,與控制器同名,不過小寫)/edit.html

b、return view(‘regist/lala’);//跨控制器。控制器名(小寫)/模板渲染文件(lala.html)

此時會自動定位模板文件:
當前模塊/默認視圖目錄(view)/以參數控制器(小寫)為名的目錄/參數(小寫).html
application/index(當前模板)/view(默認視圖文件夾)/regist(文件夾,與參數控制器同名,小寫)/lala.html

c、return view(‘admin@regist/lala’);//跨模板。模板名@控制器名(小寫)/模板渲染文件(lala.html)

此時會自動定位模板文件:
參數模塊/默認視圖目錄(view)/以參數控制器(小寫)為名的目錄/參數(小寫).html
application/admin(參數模板)/view(默認視圖文件夾)/regist(文件夾,與參數控制器同名,小寫)/lala.html

public/index.php為應用統一入口文件(每一個應用各有一個),通過域名進入服務器時,要先訪問它,它把application設為應用根目錄app。

轉自CSDN



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM