PHP는 HTTP 요청 전송을 위한 HTTP 클라이언트 라이브러리(cURL, GuzzleHttp)를 제공하고 HTTP 서버(예: Swoole) 생성도 지원합니다. 실제적인 예로는 cURL을 사용하여 API에서 데이터를 얻는 것과 Swoole을 사용하여 양식 데이터를 처리하기 위한 사용자 정의 HTTP 서버를 만드는 것이 있습니다.
PHP 고급 기능: HTTP 클라이언트 및 서버 실전 전투
HTTP 클라이언트
PHP에는 HTTP 요청을 생성하는 데 사용할 수 있는 cURL 및 GuzzleHttp와 같은 라이브러리가 내장되어 있습니다. GuzzleHttp를 사용하여 GET 요청을 보내는 방법은 다음과 같습니다.
use GuzzleHttp\Client; $client = new Client(); $response = $client->get('https://example.com'); // 检索响应状态码 $statusCode = $response->getStatusCode(); // 检索响应正文 $body = $response->getBody()->getContents();
HTTP 서버
PHP를 사용하면 HTTP 서버를 만들 수도 있습니다. 다음은 간단한 Swoole 기반 서버 예입니다.
use Swoole\Http\Server; $server = new Server('0.0.0.0', 8811); $server->on('request', function (Swoole\Http\Request $request, Swoole\Http\Response $response) { $response->header('Content-Type', 'text/plain'); $response->end('Hello World!'); }); $server->start();
실용 사례: API 요청
다음은 cURL을 사용하여 외부 API에서 데이터를 검색하는 실제 사례입니다.
<?php $curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => 'https://api.example.com/v1/users', CURLOPT_RETURNTRANSFER => true, ]); $response = curl_exec($curl); curl_close($curl); $data = json_decode($response); // 处理$data ?>
실용 사례: 사용자 정의 HTTP 서버
다음은 간단한 양식 처리를 위해 Swoole을 사용하여 사용자 정의 HTTP 서버를 생성하는 실제 사례입니다.
<?php use Swoole\Http\Server; use Swoole\Http\Request; $server = new Server('0.0.0.0', 8812); $server->on('request', function (Request $request, Swoole\Http\Response $response) { // 处理POST数据 $post = $request->post; // 根据要执行的操作创建响应 if ($post['action'] === 'create') { // 处理创建操作 } elseif ($post['action'] === 'update') { // 处理更新操作 } // 发送响应 $response->end('操作完成'); }); $server->start(); ?>
위 내용은 PHP 고급 기능: HTTP 클라이언트 및 서버 전투의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!