Fengye는 수년 동안 PHP 연구 및 개발을 수행해 왔으며 대부분 오픈 소스 프레임워크의 지침에 따라 작성되었습니다. 지금도 제 본능은 특정 PHP 프레임워크를 사용하여 PHP 애플리케이션을 개발하는 것입니다. 이는 제가 게으르고 프레임워크 이외의 것을 공부하지 않았기 때문이기도 합니다.
오늘 말씀드리는 것은 많은 PHP 프레임워크를 접한 후, 프레임워크의 도구에서 지원하지 않는 기능이 많다는 것을 알게 되었고, 직접 작성하거나 작성할 수밖에 없었습니다. 밖에서 찾아보세요. 가능한 한 바퀴를 재창조하기 위해 Feng Ye는 원하는 기능을 쉽고 빠르게 찾고 이를 PHP 애플리케이션에 통합할 수 있는 보다 실용적인 도구를 제공합니다.
구성요소입니다.
구성 요소는 PHP 애플리케이션의 특정 문제를 해결하는 데 사용되는 패키지 코드입니다. 구성 요소의 클래스, 인터페이스 및 속성은 일반적으로 동일한 네임스페이스에 배치됩니다.
구성 요소 구성 요소의 역할은 매우 단일합니다. 하나의 구성 요소가 많은 문제를 해결할 것이라고 기대하지 마십시오.
구성 요소는 PHP 파일이거나 클래스일 수 있으며 이는 매우 간단합니다.
올바른 일을 하기 위해 올바른 도구를 사용하십시오. 기회가 있다면 일부 PHP 구성 요소를 통해 문제를 정확하게 해결하는 작은 프로젝트를 구축하고 싶을 수도 있습니다. .
//m.sbmmt.com/에서 PHP 구성 요소를 찾을 수 있습니다.
PHP의 어떤 구성요소가 더 나은지 궁금하시다면 이 링크를 방문해 보세요.
//m.sbmmt.com/
이 링크에는 우수한 PHP 구성 요소가 많이 나열되어 있습니다.
HTTP 요청 관련 컴포넌트를 원하시면 위 검색창에 HTTP를 입력하신 후 Enter를 누르시면 HTTP 요청 관련 컴포넌트 목록이 나옵니다.
위 구성품은 입소문을 참고해서 선택하시는 걸 추천드려요. 너무 번거롭다면 별 개수를 따라가시면 더 유익할 것 같아요.
PHP 구성 요소를 사용하려면 종속성 관리와 자동 로딩이라는 두 가지 문제를 해결해야 합니다. 물론, 우리는 이를 해결하기 위한 해당 도구도 가지고 있습니다.
Composer는 PHP 구성 요소를 설치하는 도구입니다. Composer는 PHP 구성 요소의 종속성 관리자이기도 하며 명령줄에서 실행됩니다.
Composer를 통해 구성 요소를 다운로드해야 하는 경우 Composer는 Packagist를 통해 관련 구성 요소를 얻을 수 있습니다.
Composer는 매우 중요한 역할을 합니다. PSR-4의 등장으로 인해 종속성 관리 및 자동 로딩은 모든 PHP에 대해 PSR 표준을 준수하는 자동 파일을 자동으로 생성합니다. 프로젝트의 구성 요소. Composer는 종속성 관리 및 자동 로딩 문제를 해결합니다.
공식 문서에 따라 설치할 수 있습니다: //m.sbmmt.com/
제가 여기서 제공하는 것은 mac os와 Linux 설치 방법, 원격 시스템에 SSH로 접속하고 설치를 시작합니다.
$curl -sS //m.sbmmt.com/ | php $mv composer.phar /usr/local/bin/composer
권한 문제가 발생하면 직접 sudo를 실행하세요. 명령줄에 작곡가 명령을 입력하고 효과를 살펴보겠습니다.
#composer
Composer가 성공적으로 설치되었음을 나타내는 다음 화면이 표시됩니다.
Composer가 파손된 경우 업그레이드하라는 메시지가 표시됩니다. 업그레이드를 완료하려면 다음 명령을 입력하기만 하면 됩니다.
$composer self-update
컴포넌트 이름은 일반적으로 회사 이름/패키지 이름입니다. 예를 들어 방금 Packagist에서 PHP를 검색하여 반환된 목록에서 guzzle/http의 guzzle은 회사 이름이고 http는 패키지 이름입니다. 엔터프라이즈 이름은 전역적으로 고유하며 해당 이름 아래의 패키지가 누구에게 속해 있는지 식별하는 데 사용됩니다. 패키지 이름은 엔터프라이즈 이름으로 패키지를 고유하게 식별하는 데 사용됩니다.
Packagist는 구성 요소의 모든 버전을 나열합니다(개발 중인 개발 버전 포함). 그러나 버전별로 필터링할 필요는 없습니다.
이 http 요청 구성 요소를 다운로드하는 방법은 무엇입니까? 이때 먼저 명령줄에서 구성 요소를 다운로드하려는 프로젝트의 최상위 디렉터리로 이동합니다. 를 입력하고 다음 명령을 입력합니다. guzzle/http 구성 요소를 다운로드합니다.
#composer require guzzle/http
이 명령을 사용하면 Composer가 지정된 PHP 구성 요소의 최신 안정 버전을 찾아 설치합니다. 이런 식으로 http 요청과 관련된 PHP 구성 요소를 가질 수 있습니다. 매우 간단하지 않습니까?
다운로드하려는 구성 요소가 성공적으로 다운로드되었음을 나타내는 다음 메시지가 나타납니다!
프롬프트의 노란색 부분은 지금은 무시하겠습니다. 이는 단지 전체 세트를 사용해야 하는 경우에 수행하는 것이 좋습니다. 다음 명령을 사용합니다.
아아앙在执行这条命令的时候,会在你项目的顶层目录里面创建两个文件:composer.json和composer.lock,记住,这两个文件都需要被纳入版本控制系统。
这个组件最终会被放在你项目顶层目录的vender/目录中。
这个文件必须是有效的json文件,至于是否有效,大家可以拷贝上面的代码,到这个网站上面去认证:
//m.sbmmt.com/
它会告诉你,你的文件是不是一个标准的json。
Composer会使用这个文件中的信息对PHP组件进行查找、安装和自动加载。
composer.json文件的完整格式参见composer官网://m.sbmmt.com/
这个文件会列出项目使用的所有PHP组件,以及组件的具体版本号,这其实和文件锁啊,进程锁啊相关的有异曲同工之妙。
为什么需要将这个文件纳入版本控制系统呢,因为你需要让你的其他团队成员知道,项目使用的PHP组件都是哪些版本的,这样能避免由于组件版本差异导致的缺陷风险。
php组件下载下来了,如何去使用它呢,比方说我们下载下来的http组件在vender目录下面了,我们需要在我们项目的入口文件(一般是index.php)里面新增下面一句话
require 'vendor/autoload.php';
Composer下载PHP组件时还会为项目的所有依赖创建一个符合PSR标准的自动加载器。我们仅需在我们的项目入口文件内加入上面这段代码即可。这样我们就可以实例化项目中的任何PHP组件,这些组件会按需自动加载。
使用组件里面的方法与函数,一般使用下面的代码:
$loop = React\EventLoop\Factory::create(); $socket = new React\Socket\Server(8080, $loop); $http = new React\Http\Server($socket); $http->on('request', function (Request $request, Response $response) { $response->writeHead(200, array('Content-Type' => 'text/plain')); $response->end("Hello World!\n"); });$loop->run();
这样,大功告成。今天就和大伙说到这里,至于组件里面的方法如何去使用,在Packagist中都有详细的解释哒,大家可以多花点时间,多研究研究组件,会对你有很大帮助的。^_^
以上就是【PHP系列】PHP组件详解的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!