Pustaka FetchPHP yang terinspirasi dari JavaScript Fetch()

Fetch PHP merupakan pustaka HTTP yang ringan dan terinspirasi dari fungsi `fetch` pada PHP. Pustaka ini menghadirkan kesederhanaan dan fleksibilitas dalam membuat request HTTP. Di belakang layar pustaka ini menggunakan klien Guzzle, jadi kamu tetap mendapatkan fitur-fitur powerful yang memang dimiliki oleh Guzzle seperti sinkronus dan asinkronus request dengan API yang mudah digunakan.
Contoh penggunaan:
$response = fetch('https://jsonplaceholder.typicode.com/todos/1'); // Get the JSON response $data = $response->json(assoc: true); print_r($data); /* [ "userId" => 1, "id" => 1, "title" => "delectus aut autem", "completed" => false } */ // Get the status text (e.g., "OK") echo $response->statusText();
Metode-metode yang tersedia dalam bentuk respon
- json(bool $assoc = true): Mendekode body respon dalam bentuk JSON, jika parameter bernilai benar, maka akan mengembalikan bentuk asosiatif array, sebaliknya akan mengembalikan bentuk obyek.
- text(): Mengembalikan body respon dalam bentuk teks
- blob(): Mengembalikan body respon dalam bentuk PHP stream
- arrayBuffer(): Mengembalikan body respon dalam bentuk string binari
- statusText(): Mengembalikan kode status request, contohnya "OK" untuk 200
- ok(): Mengembalikan nilai true apabila status kode 200-299
- isInformational(), isRedirection(), isClientError(), isServerError(): Untuk mengecek variasi status
Selain itu ada pula asinkronus request berupa `fetchAsync()` seperti berikut:
// // Asyc requests // $promise = fetchAsync('https://jsonplaceholder.typicode.com/todos/1'); $promise->then(function ($response) { $data = $response->json(); print_r($data); }); // Wait for the promise to resolve $promise->wait(); // // Error handling // $promise = fetchAsync('https://nonexistent-url.com'); $promise->then(function ($response) { // handle success }, function ($exception) { // handle failure echo "Request failed: " . $exception->getMessage(); });
Untuk lebih lengkapnya kunjungi laman FetchPHP - Github.