> 개발 도구 > composer > 본문

작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.

藏色散人
풀어 주다: 2020-07-10 14:10:06
앞으로
3822명이 탐색했습니다.

다음 튜토리얼 칼럼인 composer에서는 작곡가를 사용하여 루트 로딩을 구현하는 방법을 소개합니다. 필요한 친구들에게 도움이 되길 바랍니다!

작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.

이 튜토리얼의 샘플 코드는 https://github.com/johnlui/My-First-Framework-based-on-Composer

에서 찾을 수 있습니다. CodeIgniter 프레임워크는 많은 사람들이 사용하고 있습니다. PHP 개발을 위한 입문 프레임워크는 제가 웹사이트 구축 방법을 처음부터 배우기 시작한 프레임워크이기도 합니다. CI에서 많은 것을 배웠는데, 그 중 MVC에 대한 깊은 이해와 프레임워크의 본질에 대한 이해가 가장 큰 영향을 미쳤습니다. 개발 효율성을 높이기 위해 프레임워크를 사용한다는 관점에서 볼 때 프레임워크의 본질은 라우팅입니다.

https://github.com/NoahBuscher/Macaw를 권장하며, 해당 Composer 패키지는 noahbuscher/macaw입니다.

지금 설치를 시작하고, 작곡가.json을 변경하세요:

 "require": {
    "noahbuscher/macaw": "dev-master"
  },
로그인 후 복사

작곡가 설치를 실행하고, 성공하면 다음 디렉터리를 얻게 됩니다.

작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.

이 시점에서 Macaw 패키지가 성공적으로 설치되었습니다!

다음은 기적을 목격한 순간입니다! 우리는 MFFC에 생명을 불어넣고 실제로 운영되도록 하겠습니다!

1 //github.com/NoahBuscher/Macaw, HTTP 서비스 소프트웨어 유형에 따라 의사 정적을 설정하세요. 사실 이는 대부분의 프레임워크와 동일합니다: "모든 비정적 파일을 index.php로 지정".


구성 성공 후 도메인 이름에 액세스하세요. 작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.


페이지가 깨졌을 경우 인코딩을 UTF-8로 조정하세요. 위 페이지가 성공적으로 표시되면 축하합니다. 라우팅 구성에 성공했습니다! 작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.

Macaw에는 파일이 하나 뿐이고, 제거된 빈 줄의 총 개수는 100줄이 조금 넘습니다. 코드를 통해 어떻게 작동하는지 직접 이해할 수 있습니다. 아래에서 간단히 분석해 보겠습니다.

Composer의 자동 로딩은 각 URL이 MFFC/public/index.php를 구동한 후 메모리의 파일 이름에 대한 전체 네임스페이스 클래스 이름 배열을 유지하므로 코드에서 이를 사용할 때 특정 클래스를 선택하면 해당 클래스가 포함된 파일이 자동으로 로드됩니다.
작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.

라우팅 파일에 Macaw 클래스를 로드했습니다: "use NoahBuscherMacawMacaw;" 그런 다음 정적 메서드::get()을 두 번 호출했습니다. 이 메서드는 존재하지 않으며 MFFC/vendor/codingbean/macaw/에서 사용됩니다. .php의 Macaw __callstatic()이 대신합니다.

  • 이 함수는 두 개의 매개변수를 허용합니다. method" role="presentation" style="position: relative;">

  • __callstatic() 做的事情也很简单,分别将目标URL(即 /fuck)、HTTP方法(即 GET)和回调代码压入 routes" role="presentation" style="position: relative;">routesmethods 和 $callbacks 三个 Macaw 类的静态成员变量(数组)中。

  • 路由文件最后一行的 Macaw::dispatch(); 方法才是真正处理当前 URL 的地方。能直接匹配到的会直接调用回调,不能直接匹配到的将利用正则进行匹配。

  • 위 내용은 작곡가를 사용하여 경로 로딩을 구현하는 방법을 가르칩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    관련 라벨:
    원천:csdn.net
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    최신 이슈
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿
    회사 소개 부인 성명 Sitemap
    PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!