ホームページ  >  記事  >  php教程  >  Yii コントローラーでのフィルター使用の分析

Yii コントローラーでのフィルター使用の分析

高洛峰
高洛峰オリジナル
2016-12-30 14:44:261331ブラウズ

この記事の例では、Yii コントローラーでのフィルターの使用方法について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:

フィルタリング アクションを指定します (新規、リスト、管理ページを呼び出すときに次の projectContext() メソッドが使用されます)

public function filters()
{
  return array(
    'accessControl', // perform access control for CRUD operations
    'postOnly + delete', // we only allow deletion via POST request
    'projectContext +create index admin',
  );
}

いくつかのフィルタ ロジックを追加し、フィルターを追加する

public function filterProjectContext($filterChain)
{
  $prijectId = null;
  if(isset($_POST['pid'])){
    $projectId = $_POST['pid'];
  }elseif(isset($_GET['pid'])){
    $projectId = $_GET['pid'];
  }
  $this->loadProject($projectId);
  $filterChain->run();
}
public function loadProject($projectid)
{
  if($this->_project === null){
    $this->_project = Project::model()->findbyPK($projectid);
    if($this->_project === null){
      throw new CHttpException(404,'请求和项目没找到!');
    }
  }
  return $this->_project;
}

この記事が、Yii フレームワークに基づいた PHP プログラムの設計に役立つことを願っています。

Yii コントローラーでのフィルター使用状況の分析に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。