1. 程式人生 > >thinkphp5中的分層控制器及其使用/tp5分層控制器

thinkphp5中的分層控制器及其使用/tp5分層控制器

分層控制器中所定義的控制器其實是不能被URL直接訪問得到,作為一個類被內部例項化呼叫而已,它也可以被試圖呼叫。我們說多級控制器是在controller目錄下新建目錄來放置一類控制器類。
其實分層控制器是在模組目錄下建立一個目錄,例如在index/goods中來建立類。目錄結構變化如圖:

這裡寫圖片描述

那麼對於控制器類的定義也就有所不同了,注意名稱空間:

這裡寫圖片描述

那麼分層控制器如何使用呢?

$user = \think\Loader::controller('Login', 'user');
echo $user->getuserinfo(); 

為了方便呼叫,系統提供了controller助手函式直接例項化多層控制器,例如:

$user = controller('Login', 'user');
echo $user->getuserinfo(); 

支援跨模組呼叫,例如:

$user = controller('Admin/Login', 'user');
echo $user->getuserinfo();

也可以使用簡化的方式來使用:

$user = \think\Loader::action(‘Login/getuserinfo’,’’,’user’);
//助手函式方式   action(‘Login/getuserinfo’,’’,’user’);

當然以上呼叫也可以在模板中使用模板中呼叫函式的方式來呼叫。

相關推薦

thinkphp5分層控制器及其使用/tp5分層控制器

分層控制器中所定義的控制器其實是不能被URL直接訪問得到,作為一個類被內部例項化呼叫而已,它也可以被試圖呼叫。我們說多級控制器是在controller目錄下新建目錄來放置一類控制器類。 其實分層控制器是在模組目錄下建立一個目錄,例如在index/goods

tp5 分層控制器

版本:5.1.7 官方文件:https://www.kancloud.cn/manual/thinkphp5_1/353983 先定義 再在正常的控制器呼叫 結果如下: 再在正常的控制器呼叫

前端分層開發(MVC分層)、控制器繼承(程式碼重用)

1.1 需求分析 完成了品牌的增刪查改功能,但是JS程式碼和HTML程式碼都放在一起,並不利於我們後期維護。我們可以在前端程式碼中也運用MVC的模式,將程式碼進行分離,提高程式的可維護性。 1.2MVC分層  1.2.1前端基礎模組層 在s

thinkphp5多級控制器及其使用

1,tp5寫好的介面框架,為了讓再版本升級後可以讓部分使用者使用以前的版本使用      此時建立了v1,和v2兩個版本,路由可以這樣設定: 訪問時 好了,大功告成。 localhost啊啊啊啊啊

解決thinkphp5關閉多支援多模組後始終提示控制器不存在的問題

配置的時候想去掉index 網上說法眾多 可是系統本身帶有這個功能的。 // 是否支援多模組 'app_multi_module' => false, 這個只要設定false按理說就可以將xxxx/index/user/login=> xxxx/

說一說Web開發兩種常用的分層架構及其對應的程式碼模型

昨天妹子讓我幫她解決個問題,本以為可以輕鬆搞定,但是開啟他們專案的一瞬間,我頭皮發麻。本身功能不多的一個小專案,解決方案裡竟然有幾十個類庫。僅僅搞明白各個類庫的作用,程式碼層次之間的引用關係就花了一個多小時。 顯然可能他們專案結構的程式碼模型出了問題,設計混亂,不容易上手。 專案中一個好的的程式碼模型一定

TP框架的頁面繼承,以及控制器

在剛開始使用TP框架的時候,總是有一些莫名其妙的問題,比如說靜態頁面的繼承。剛開始不知道為什麼這個頁面明明寫一些別的東西,但是還會顯示有內容或者選單列表。原因就是因為這個           :繼承頁面,來自變數$_global_l

第5章 TP5.0 控制器

上次複習 1、路由 a、有利於SEO優化 b、簡潔方便記憶 2、路由模式 1、普通模式(PATHINFO) http://www.tp.com/index.php/Index/Index/inde

laravel 與 tp5 獲取控制器 方法名

laravel 5  $actions=explode('\\', \Route::current()->getActionName());  $modelName=$actions[count($actions)-2]=='Controllers'?null:$actions[count($actio

YII2使用RBAC對模組,控制器,方法的許可權控制以及規則的使用

在使用YII2中自帶的RBAC時,需要先配置config/web.php: return [ // ... 'components' => [ 'authManager' => [ 'class' => 'yii\rbac

iOS設定新的根檢視控制器

1、背景描述: 1)登入檢視控制器為app啟動之後的根檢視控制器,點選登入按鈕之跳進app主介面                          2)主介面是以一個側邊欄選單 2、實現登入按鈕觸發(login)之後主介面顯示之前設定新的根檢視控制器: - (void)

(7)學習tp5控制器原理和使用

系統學習tp5框架,請點選下面的連線控制器的名稱空間從何而來,如何修改修改名稱空間的方式:注意:改config.php中的app_namespace配置是沒用的; 我用的是第2種方式,改完之後控制器的名稱空間不要忘記也改成xg\模組名\controller不繼承基類調模板如:

dropzone拖動文件上傳在thinkphp5應用一個實例

php dropzone參考:Dropzone的使用方法點擊查看dropzone中文文檔後臺用的INSPINIA框架的模板,裏面有,dropzone.jsdropzone是一個可以拖文件上傳的js.拖進去,就上傳了。我在頁面上,寫了一個保存已經上傳的文件的image3,image4.這就需要改寫一下dropz

ThinkPHP5使用Workerman框架

workerman thinkphp5 tcp通信 php之socket通信 ThinkPHP框架不多說,強悍之處不容置疑。有疑問看官方手冊Workerman框架也是非常強悍的(開發框架人的背景不是很清楚),官方是這樣介紹的:Workerman,讓你看到PHP不為人知的一面。當然詳細的介紹WM

AD使用ntdsutil工具 恢復主域控制器 清理孤立域控制器

opera 災難 清理 conn nec 一個 per 恢復 true 需求: 主域控制器出現災難故障,輔助域控制器正常 在輔助域控制器使用ntdsutil工具清理主域控制器並奪取PDC角色 首先清理孤立的域控制器 ntdsutil ntdsutil: metadata

Serializable在C#的作用及其優點

p s mst access pen eat mat zab ref hal 原文發布時間為:2009-10-27 —— 來源於本人的百度文章 [由搬家工具導入]Serializalbe - Enable the object can be Serialized into

Thinkphp5利用js/jQuery傳遞參數的方法

傳遞參數 ati array key win comment 字符串 num pid window.location.href="{:url(‘Index/index‘)}>"+"/ID/"+ID; //這樣可以生成,但url模式改變則不能用 window.loca

ThinkPHP5使用workman框架與硬件設備藍牙鎖通訊

workman text服務 tcp協議通訊 php的socket開發 未完待續。。。本文出自 “為了以後” 博客,謝絕轉載!ThinkPHP5中使用workman框架與硬件設備藍牙鎖通訊

Java,類及其組成所使用的常見修飾符

成員 name fin 常用 tro string prot 默認 abstract Java中,類及其組成所使用的常見修飾符   (1)修飾符的分類:     權限修飾符:private、默認、protected、public     狀態修飾符:static、fin

Thinkphp5路由參數分隔符

php thinkphp在做Thinkphp5項目時,遇到一個問題,例:在edit.html中有一句: <a href="{:url(‘addEdit‘,array(‘id‘=>$vo.id))}" class="btn btn-outline btn-info btn-xs" target="