1. 程式人生 > >ThinkPHP5.1 前置操作說明

ThinkPHP5.1 前置操作說明

可以為某個或者某些操作指定前置執行的操作方法,設定 beforeActionList屬性可以指定某個方法為其他方法的前置操作,陣列鍵名為需要呼叫的前置方法名,無值的話為當前控制器下所有方法的前置方法。

['except' => '方法名,方法名'] 

表示這些方法不使用前置方法,

['only' => '方法名,方法名']

表示只有這些方法使用前置方法。

 

示例如下:

<?php
namespace app\index\controller;

use think\Controller;

class Index extends
Controller { protected $beforeActionList = [ 'first',  //在執行所有方法前都會執行first方法 'second' => ['except'=>'hello'],  //除hello方法外的方法執行前都要先執行second方法 'three' => ['only'=>'hello,data'],  //在hello/data方法執行前先執行three方法 ]; protected function first() {
echo 'first<br/>'; } protected function second() { echo 'second<br/>'; } protected function three() { echo 'three<br/>'; } public function hello() { return 'hello'; } public function data() {
return 'data'; } }

 

訪問

http://localhost/index.php/index/Index/hello 

最後的輸出結果是

first
three
hello

訪問

http://localhost/index.php/index/Index/data 

的輸出結果是:

first
second
three
data