PHP 개발에서 타사 서비스 또는 기타 시스템과의 데이터 상호 작용이 종종 필요하며 API 인터페이스는 가장 일반적으로 사용되는 방법 중 하나입니다. PHP의 내장 컬 확장 기능을 통해 HTTP 요청을 쉽게 구현하고 API와의 완전한 커뮤니케이션을 구현할 수 있습니다. 이 기사는 PHP의 컬을 사용하여 API 인터페이스를 작동하는 방법을 보여주기 위해 완전한 예제를 사용합니다.
시작하기 전에 CURL 확장이 PHP 환경에 설치되어 있는지 확인하십시오. 명령 줄을 통해 확인할 수 있습니다.
php -i | grep -i 컬
출력에 컬 관련 정보가 포함 된 경우 컬이 설치되었음을 의미합니다. 그렇지 않으면 다음 명령을 통해 설치할 수 있습니다 (Debian/Ubuntu를 예로 들어) :
sudo apt-get 설치 php-curl
명확한 코드 구조와 유지 관리가 쉬운 경우 CURL 요청을 중앙에서 처리하기 위해 클래스를 캡슐화합니다.
클래스 컬라피형 { 개인 $ baseurl; 공개 기능 __construct ($ baseurl) { $ this-> baseurl = $ baseurl; } 공개 함수 요청 ($ endpoint, $ params = array (), $ method = 'get') { $ url = $ this-> baseurl. '/'. $ 엔드 포인트; $ ch = curl_init (); if ($ method == 'post') { curl_setopt ($ ch, curlopt_post, 1); curl_setopt ($ ch, curlopt_postfields, http_build_query ($ params)); } 또 다른 { $ url. = '?' . http_build_query ($ params); } curl_setopt ($ ch, curlopt_url, $ url); curl_setopt ($ ch, curlopt_returntransfer, 1); $ response = curl_exec ($ ch); if (curl_errno ($ ch)) { $ error = curl_error ($ ch); curl_close ($ ch); 새 예외를 던지십시오 ( "Curl Request Error :". $ error); } curl_close ($ ch); 반환 $ 응답; } }
다음은 API 요청에 위에서 캡슐화 된 클래스를 사용하는 방법의 예입니다.
$ baseurl = 'https://api.example.com'; $ apikey = 'your-api-key'; $ client = new Curlapiclient ($ baseurl); 노력하다 { $ endpoint = '사용자'; $ params = array ( 'apikey'=> $ apikey); $ response = $ client-> request ($ endpoint, $ params, 'get'); 에코 $ 응답; } catch (예외 $ e) { echo '요청이 실패 :'. $ e-> getMessage (); }
위의 코드는 GET 요청의 구현을 보여줍니다. 게시물 요청은 마지막 매개 변수를 "게시"로 변경하고 해당 매개 변수 배열을 전달하면됩니다.
이 기사에서는 PHP 환경에 CURL 확장을 설치하는 방법을 소개하고 공통 API 통화 클래스를 캡슐화하며 인스턴스를 통해 GET 및 게시 요청을 시작하는 방법을 보여줍니다. 이 캡슐화 방법을 사용하여 API 호출은 다양한 PHP 프로젝트에서 API 기능을 통합하는 데 적합한 모듈 식적이고 유지 관리하기 쉽습니다.