Composer종속성 패키지 관리 및 자동 로딩 실현
Composer는 require 및 제거 명령을 통해 프로젝트에 종속성 패키지를 추가 및 삭제합니다.
Composer는 프로젝트 루트 디렉터리에 작곡가.json 파일을 구성하여 PSR-4 자동 로딩 사양을 구현할 수 있습니다.
composer.json 아키텍처에 대한 자세한 설명은 다음과 같습니다. 이 파일을 구성하는 방법에 대한 자세한 내용은 다음과 같습니다.
TP5.1의 소스코드를 연구해보면 TP5의 자동 로딩은 주로 작곡가 설치 명령이 실행된 후 벤더 디렉터리에 작곡가가 생성한 ClassLoader 클래스를 기반으로 다시 작성됩니다. Composer 자동 로딩 메커니즘은 프로젝트 루트 디렉터리 경로를 기준으로 네임스페이스와 파일 간의 매핑 관계를 설정한 다음 spl_autoload_register 메서드를 통해 시스템의 자동 로딩을 등록합니다. 자동 로딩 로직 중에서 가장 중요한 것은 어떻게 하느냐입니다. 위에서 생성된 경로를 기준으로 해당 파일을 검색하여 포함시킵니다.
Composer 자동 로딩 세부 과정:
● 루트 디렉터리의 Composer.json 파일에 autoload의 자동 로딩 매핑 규칙을 구성합니다.
● 작성기 설치/업데이트 명령을 호출하여 Vendor/composer 폴더 및 관련 파일을 생성합니다. 네임스페이스와 파일 경로 간의 매핑은 autoload_psr4.php 파일에 저장됩니다. 동시에 자동으로 로드되는 도구 클래스인 ClassLoader.php 파일이 생성됩니다. 네임스페이스를 구문 분석하여 포함할 관련 파일을 찾습니다.
● 항목 파일의 Vendor 폴더에 autoload.php 파일을 포함시킵니다. 자동 로딩 관련 기능을 변경하고 일부 작업을 사용자 정의하려면 작곡가가 생성한 ClassLoader 파일을 기반으로 로더 도구 클래스를 작성할 수 있습니다. 전제는 작곡가의 자동 로딩 원리와 PSR4 자동 로딩을 이해하는 것입니다. 사양. 자세한 내용은 tp5의 Loader 클래스 구현을 참조하세요.
더 많은 작곡가 관련 기술 기사를 보려면 composer 칼럼을 방문하세요: https://www.php.cn/tool/composer/
위 내용은 Composer는 프로젝트 자동 로딩을 구현합니다(Composer는 종속성 패키지를 관리합니다).의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!