亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Yii里的特別行為ActionFilter

發布時間:2021-03-03 17:56:53 來源:億速云 閱讀:132 作者:TREX 欄目:開發技術

這篇文章主要講解了“如何使用Yii里的特別行為ActionFilter”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何使用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.

總結

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

感謝各位的閱讀,以上就是“如何使用Yii里的特別行為ActionFilter”的內容了,經過本文的學習后,相信大家對如何使用Yii里的特別行為ActionFilter這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乳山市| 仁怀市| 中牟县| 民乐县| 大厂| 儋州市| 柳江县| 靖江市| 湖北省| 庆安县| 云龙县| 临澧县| 大名县| 乡城县| 冀州市| 南召县| 酉阳| 扬州市| 文登市| 香格里拉县| 泾川县| 岳西县| 遂川县| 冷水江市| 师宗县| 布尔津县| 融水| 宁夏| 田林县| 阳西县| 沾益县| 栾川县| 建湖县| 四平市| 涞源县| 长武县| 大渡口区| 祁东县| 镶黄旗| 拉孜县| 诸暨市|