thinkphp5多級控制器是什麼?怎麼使用?

thinkphp5多級控制器是什麼?怎麼使用?

1、總結

一、多級控制器是讓控制器的級數變成多級,也就是controller目錄下能夠新建其它目錄。

二、使用的話注意目錄下的控制的的命名空間(加上目錄名)(namespace app\index\controller\one;)和訪問方式(文件名.控制器名)(http://serverName/index.php/index/one.blog/index)(不開自動定位控制器的狀況)

 

2、多級控制器

新版支持任意層次級別的控制器,而且支持路由,例如:php

namespace app\index\controller\one; use think\Controller; class Blog extends Controller { public function index() { return $this->fetch(); } public function add() { return $this->fetch(); } public function edit($id) { return $this->fetch(); } } 

該控制器類的文件位置爲:thinkphp

application/index/controller/one/Blog.php 

訪問地址可使用app

http://serverName/index.php/index/one.blog/index 

若是要在路由定義中使用多級控制器,可使用:thinkphp5

\think\Route::get('blog/add','index/one.Blog/add');

 

3、自動定位控制器

若是你使用了多級控制器的話,能夠設置controller_auto_search參數開啓自動定位控制器,便於URL訪問,例如首先在配置文件中添加:測試

'controller_auto_search' => true, 

而後定義控制器以下:fetch

namespace app\index\controller\one; use think\Controller; class Blog extends Controller { public function index() { return $this->fetch(); } public function add() { return $this->fetch(); } public function edit($id) { return $this->fetch('edit:'.$id); } } 

咱們就能夠直接訪問下面的URL地址了:this

http://serverName/index.php/index/one/Blog

 

4、測試題-簡答題

一、thinkphp裏面的多級控制器是什麼?

解答:就是thinkphp能夠在控制器controller文件下再建文件夾。url

application/index/controller/one/Blog.php

二、thinkphp裏面的多級控制器有什麼用?

解答:讓控制器的層次結構更加分明。spa

三、thinkphp裏面的多級控制器如何實現?

解答:a、在控制器controller目錄下創建文件夾   b、新文件夾下的命名空間要注意。code

namespace app\index\controller\one;

四、在控制器controller目錄下創建名爲one的目錄,one目錄中的控制器的命名空間是怎麼樣的?

解答:在平常控制器後面加上one。namespace app\index\controller\one;

五、在控制器controller目錄下創建名爲one的目錄,one目錄中有一個名爲blog的控制器,這個控制器如何在地址欄被訪問?

解答:目錄名.控制器名 的形式。 one.blog。 http://serverName/index.php/index/one.blog/index

六、thinkphp中的自動定位控制器有什麼用?

解答:便於多級控制器的訪問,讓多級控制器能夠按照文件目錄訪問,而不是 目錄名.控制器名 的形式訪問。http://serverName/index.php/index/one/Blog。

七、thinkphp中的自動定位控制器只有在開啓了多級控制器纔有用,這句話正確麼?

解答:正確,由於自動定位控制器就是爲多級控制器來服務的。

八、thinkphp中如何開啓自動定位控制器?

解答:在配置文件中將 'controller_auto_search' => true, 前者的值置爲true。

九、thinkphp中的命名空間和ues引入的文件名是正斜槓仍是反斜槓?

解答:反斜槓。namespace app\index\controller\one;

十、url訪問中的地址是正斜槓仍是反斜槓?

解答:正斜杆。http://serverName/index.php/index/one/Blog

相關文章
相關標籤/搜索