>  기사  >  PHP 프레임워크  >  thinkphp 미들웨어의 사용법은 무엇입니까?

thinkphp 미들웨어의 사용법은 무엇입니까?

WBOY
WBOY원래의
2022-02-24 16:26:512941검색

thinkphp에서 "APPmiddleware" 디렉토리에 생성된 클래스 파일은 미들웨어로 주로 애플리케이션의 HTTP 요청을 가로채거나 필터링하고 필요한 비즈니스 처리를 수행하는 데 사용됩니다. 글로벌 미들웨어, 라우팅 미들웨어, 제어 서버 미들웨어로 나눌 수 있습니다. .

thinkphp 미들웨어의 사용법은 무엇입니까?

이 문서의 운영 환경: Windows 10 시스템, ThinkPHP 버전 5, Dell G3 컴퓨터.

thinkphp 미들웨어 사용법

1. 미들웨어 파일 정의

APPmiddleware 디렉토리에 생성된 클래스 파일은 모두 미들웨어, 글로벌 미들웨어, 라우팅 미들웨어, 컨트롤러 미들웨어를 통해 참조할 수 있습니다. 디렉토리 경로. 여러 애플리케이션은 자체 애플리케이션 디렉터리에 새 미들웨어 디렉터리를 생성한 다음 아래 클래스 파일을 생성해야 합니다.

미들웨어는 주로 애플리케이션의 HTTP 요청을 가로채거나 필터링하고 필요한 비즈니스 처리를 수행하는 데 사용됩니다.

미들웨어 정의: 명령줄 지침을 통해 신속하게 미들웨어를 생성할 수 있습니다.

php think make:middleware Check

이 명령은 application/http/middleware 디렉토리 아래에 Check 미들웨어를 생성합니다.

2. 미들웨어 파일 참조 또는 사용

한번에 미들웨어 파일 생성 후

(1) 글로벌 미들웨어로 사용

APP 디렉토리의 middleware.php 파일에 다음을 추가합니다. appmiddlewarechushimima::class와 같은 경로와 파일을 전역 미들웨어로 사용합니다. 전 세계적으로 작동합니다.

middleware.php에 등록되지 않은 미들웨어는 글로벌 미들웨어가 아니며 정의 방법에 따라 라우팅 미들웨어와 컨트롤러 미들웨어로 구분됩니다.

(2) 라우팅 미들웨어로 사용

여전히 동일한 미들웨어 클래스 파일 appmiddlewarechushimima.APP 디렉터리 아래의 경로 디렉터리에 있는 라우팅 정의 파일에

Route::rule('index/denglu','index/denglu');
->middleware('\app\middleware\chushimima');

와 같은 라우팅 규칙을 추가합니다. 이 경로에 액세스할 때만 적용됩니다.

(3) 컨트롤러 미들웨어로 사용

여전히 동일한 미들웨어 클래스 파일 appmiddlewarechushimima를 컨트롤러 파일에 다음 코드를 추가합니다. 예:

class Index extends baseController
{ protected $middleware='\app\middleware\chushimima';

권장 학습: "PHP Video Tutorial"

위 내용은 thinkphp 미들웨어의 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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