Rumah >pembangunan bahagian belakang >tutorial php >Ciri lanjutan PHP: Pelanggan HTTP dan pertempuran pelayan
PHP menyediakan perpustakaan klien HTTP (cURL, GuzzleHttp) untuk menghantar permintaan HTTP, dan juga menyokong penciptaan pelayan HTTP (seperti Swoole). Contoh praktikal termasuk menggunakan cURL untuk mendapatkan data daripada API dan menggunakan Swoole untuk mencipta pelayan HTTP tersuai untuk memproses data borang.
Ciri Lanjutan PHP: Pertempuran Praktikal Pelanggan dan Pelayan HTTP
Klien HTTP
PHP mempunyai perpustakaan terbina dalam seperti cURL dan GuzzleHttp, yang boleh digunakan untuk permintaan HTTP. Begini cara menghantar permintaan GET menggunakan GuzzleHttp:
use GuzzleHttp\Client; $client = new Client(); $response = $client->get('https://example.com'); // 检索响应状态码 $statusCode = $response->getStatusCode(); // 检索响应正文 $body = $response->getBody()->getContents();
Pelayan HTTP
PHP juga membolehkan anda mencipta pelayan HTTP. Berikut ialah contoh pelayan berasaskan Swoole yang mudah:
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();
Kes praktikal: Permintaan API
Berikut ialah kes praktikal menggunakan cURL untuk mendapatkan data daripada API luaran:
<?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 ?>
Kes praktikal: Pelayan HTTP tersuai
Berikut ialah kes praktikal menggunakan Swoole untuk mencipta pelayan HTTP tersuai untuk pemprosesan borang mudah:<?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(); ?>
Atas ialah kandungan terperinci Ciri lanjutan PHP: Pelanggan HTTP dan pertempuran pelayan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!