欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Yii中特殊行為ActionFilter的使用方法示例

 更新時間:2020年10月18日 11:08:20   作者:琯琯  
這篇文章主要給大家介紹了關(guān)于Yii中特殊行為ActionFilter的使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

新建 app\filters\LoggingFilter 繼承 yii\base\ActionFilter

LoggingFilter 的功能: 在指定請求的 action 前后各記錄一條日志

<?php

namespace app\filters;

use yii\base\ActionFilter;

class LoggingFilter extends ActionFilter
{
 public function beforeAction($action)
 {
  parent::beforeAction($action);

  // To do something
  printf('This is a logging for %s\beforeAction.%s', $this->getActionId($action), PHP_EOL);

  return true;
 }

 public function afterAction($action, $result)
 {
  parent::afterAction($action, $result);

  // To do something
  printf('This is a logging for %s\afterAction.%s', $this->getActionId($action), PHP_EOL);

  return true;
 }
}

新建 app\controllers\SystemController

<?php

namespace app\controllers;

use app\filters\LoggingFilter;

class SystemController extends \yii\web\Controller
{
 public function behaviors()
 {
  parent::behaviors();

  return [
   'anchorAuth' => [
    'class' => LoggingFilter::className(),
    'only' => ['test', 'test-one'], // 僅對 'test'、'test-one' 生效
    'except' => ['test-one'], // 排除 'test-one'
   ],
  ];
 }

 public function actionTestOne()
 {
  printf('This is a testing for %s.%s', $this->getRoute(), PHP_EOL);
 }

 public function actionTestTwo()
 {
  printf('This is a testing for %s.%s', $this->getRoute(), PHP_EOL);
 }

 public function actionTest()
 {
  printf('This is a testing for %s.%s', $this->getRoute(), PHP_EOL);
 }
}

測試

請求 http://yii.test/index.php?r=system/test

This is a logging for test\beforeAction.
This is a testing for system/test.
This is a logging for test\afterAction.

請求 http://yii.test/index.php?r=system/test-one

This is a testing for system/test-one.

請求 http://yii.test/index.php?r=system/test-two

This is a testing for system/test-two.

總結(jié)

Yii 中的 ActionFilter(過濾器)相當于 Laravel 中的 Middleware(中間件),beforeAction 相當于前置中間件,afterAction 相當于后置中間件。

到此這篇關(guān)于Yii中特殊行為ActionFilter使用的文章就介紹到這了,更多相關(guān)Yii特殊行為ActionFilter使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Laravel?Swagger?使用超詳細教程

    Laravel?Swagger?使用超詳細教程

    Swagger?是一個基于?Open?Api?規(guī)范的?API?管理工具,通過項目注解的形式自動構(gòu)建?API?文檔,擁有在線調(diào)試的功能,這篇文章主要介紹了Laravel?Swagger?使用完整教程,需要的朋友可以參考下
    2023-09-09
  • php中smarty變量修飾用法實例分析

    php中smarty變量修飾用法實例分析

    這篇文章主要介紹了php中smarty變量修飾用法,實例分析了smarty模板變量修飾的常用技巧,需要的朋友可以參考下
    2015-06-06
  • PHP判斷當前使用的是什么瀏覽器(推薦)

    PHP判斷當前使用的是什么瀏覽器(推薦)

    PHP簡單判斷當前使用的是什么瀏覽器,判斷瀏覽器類型的方法,方便統(tǒng)計網(wǎng)站訪問用戶使用瀏覽器的比例。這篇文章主要介紹了PHP判斷當前使用的是什么瀏覽器(推薦),需要的朋友可以參考下
    2019-10-10
  • PHP利用Mysql鎖解決高并發(fā)的方法

    PHP利用Mysql鎖解決高并發(fā)的方法

    這篇文章主要介紹了PHP利用Mysql鎖解決高并發(fā)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • windows環(huán)境下使用Composer安裝ThinkPHP5

    windows環(huán)境下使用Composer安裝ThinkPHP5

    本文給大家分享的是在windows環(huán)境下使用Composer安裝ThinkPHP5的具體步驟和方法,非常的簡單實用,有需要的小伙伴可以參考下
    2018-05-05
  • java微信開發(fā)之上傳下載多媒體文件

    java微信開發(fā)之上傳下載多媒體文件

    這篇文章主要為大家詳細介紹了java微信開發(fā)之簡單實現(xiàn)上傳下載多媒體文件的相關(guān)資料,感興趣的小伙伴們可以參考一下
    2016-06-06
  • php微信分享到朋友圈、QQ、朋友、微博

    php微信分享到朋友圈、QQ、朋友、微博

    這篇文章主要為大家詳細介紹了php微信分享到朋友圈、QQ、朋友、微博,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • 淺析PHP7新功能及語法變化總結(jié)

    淺析PHP7新功能及語法變化總結(jié)

    這篇文章主要介紹了淺析PHP7新功能及語法變化總結(jié)的相關(guān)資料,需要的朋友可以參考下
    2016-06-06
  • 解析PHP之提取多維數(shù)組指定列的方法

    解析PHP之提取多維數(shù)組指定列的方法

    這篇文章主要介紹了解析PHP之提取多維數(shù)組指定列的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • PHP函數(shù)getenv簡介和使用實例

    PHP函數(shù)getenv簡介和使用實例

    這篇文章主要介紹了PHP函數(shù)getenv簡介和使用實例,getenv函數(shù)主要用來獲取一個環(huán)境變量的值,常見的PHP探針程序都是使用的getenv函數(shù),需要的朋友可以參考下
    2014-05-05

最新評論