>php教程 >PHP开发 >Yii 컨트롤러의 필터 사용량 분석

Yii 컨트롤러의 필터 사용량 분석

高洛峰
高洛峰원래의
2016-12-30 14:44:261400검색

이 글의 예시에서는 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 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.