PHP. keriting
Meningkatkan Artikel
Simpan Artikel
Seperti Artikel
- Tingkat Kesulitan. Sulit
- Terakhir Diperbarui. 04 Okt 2021
Meningkatkan Artikel
Simpan Artikel
CURL adalah singkatan dari 'Klien untuk URL', awalnya dengan URL dieja dalam huruf besar untuk memperjelas bahwa itu berhubungan dengan URL. Itu diucapkan sebagai 'lihat URL'. Proyek cURL memiliki dua produk libcurl dan curl.
- libcurl. Pustaka transfer URL sisi klien yang gratis dan mudah digunakan, mendukung FTP, TPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE, dan LDAP. libcurl mendukung sertifikat TTPS, HTTP POST, HTTP PUT, pengunggahan FTP, kerberos, pengunggahan berbasis HTTP, proksi, cookie, autentikasi pengguna & kata sandi, resume transfer file, tunneling proxy HTTP, dan banyak lagi. libcurl gratis, aman untuk thread, kompatibel dengan IPv6, kaya fitur, didukung dengan baik, dan cepat
- keriting. Alat baris perintah untuk mendapatkan atau mengirim file menggunakan sintaks URL. Karena curl menggunakan libcurl, curl mendukung berbagai protokol internal umum, saat ini termasuk HTTP, HTTPS, FTP, FTPS, GOPHER, TELNET, DICT, dan FILE
Apa itu PHP/cURL?
Modul untuk PHP yang memungkinkan program PHP untuk mengakses fungsi curl di dalam PHP. dukungan cURL diaktifkan di PHP, fungsi phpinfo() akan ditampilkan di outputnya. Anda diminta untuk memeriksanya sebelum menulis program sederhana pertama Anda di PHP.
php
<?php
phpinfo();
?>
Penggunaan Sederhana. Permintaan/operasi paling sederhana dan paling umum yang dibuat menggunakan HTTP adalah untuk mendapatkan URL. URL itu sendiri dapat merujuk ke halaman web, gambar, atau file. Klien mengeluarkan permintaan GET ke server dan menerima dokumen yang diminta
Beberapa fungsi dasar Curl.
- Fungsi curl_init() akan menginisialisasi sesi baru dan mengembalikan pegangan cURL
- fungsi curl_exec($ch) harus dipanggil setelah menginisialisasi sesi cURL dan semua opsi untuk sesi ditetapkan. Tujuannya hanya untuk mengeksekusi sesi CURL yang telah ditentukan sebelumnya (diberikan oleh ch)
- curl_setopt($ch, option, value) menyetel opsi untuk sesi cURL yang diidentifikasi oleh parameter ch. Opsi menentukan opsi mana yang akan ditetapkan, dan nilai menentukan nilai untuk opsi yang diberikan
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) mengembalikan konten halaman. Jika disetel 0 maka tidak ada output yang akan dikembalikan
- curl_setopt($ch, CURLOPT_URL, $url) meneruskan URL sebagai parameter. Ini adalah alamat situs web server target Anda. Ini adalah URL yang ingin Anda dapatkan dari internet
- curl_exec($ch) ambil URL dan berikan ke variabel untuk menampilkan output
- curl_close($ch) tutup sumber daya curl, dan bebaskan sumber daya sistem
Contoh.
php
<?php
// From URL to get webpage contents.
$url ="//www.geeksforgeeks.org/";
// Initialize a CURL session.
phpinfo();0 phpinfo();1
phpinfo();2
phpinfo();3phpinfo();0phpinfo();5
phpinfo();_6
phpinfo();3phpinfo();0phpinfo();9________306__303_______1
?>2 ?>3phpinfo();0?>1
?>6 ?>2;
?>
Keluaran.
Referensi. http. //php. net/manual/en/buku. keriting. php
Catatan Pribadi Saya arrow_drop_up
Menyimpan
Silakan Login untuk berkomentar.
Hari ini, kita akan menjelajahi ekstensi cURL di PHP, yang memungkinkan Anda membuat permintaan HTTP dari kode Anda
Seringkali Anda perlu berkomunikasi dengan situs web eksternal dalam pengembangan PHP Anda sehari-hari. Baik itu memanggil REST API pihak ketiga untuk mengambil data atau mengunduh sumber daya dari situs web eksternal, Anda menginginkan pustaka yang memungkinkan Anda melakukannya dengan mudah
Di PHP, ada berbagai metode yang dapat Anda gunakan untuk terhubung dan berkomunikasi dengan berbagai jenis server. Salah satu cara termudah adalah dengan menggunakan fungsi ________0______40 untuk membaca file jarak jauh. Di sisi lain, Anda juga dapat menggunakan soket untuk mengimplementasikan komunikasi klien-server. Namun, dalam artikel ini, kami akan membahas ekstensi cURL secara mendetail, dengan contoh dunia nyata
cURL adalah singkatan dari URL klien, dan ini adalah pustaka yang memungkinkan Anda mengirim dan menerima informasi dengan sintaks URL. Faktanya, ini memanfaatkan perpustakaan libcurl, yang dibuat oleh Daniel Stenberg, yang memungkinkan Anda untuk terhubung dan berkomunikasi dengan berbagai jenis server dengan berbagai jenis protokol. Selain HTTP dan HTTPS, pustaka libcurl juga mendukung protokol seperti FTP, Gopher, Telnet, DICT, File, dan LDAP
Dari bagian selanjutnya dan seterusnya, kita akan melihat beberapa contoh dunia nyata untuk menunjukkan bagaimana Anda dapat menggunakan fungsi cURL di PHP
Contoh Dunia Nyata
Di bagian ini, kami akan membuat contoh dunia nyata untuk mendemonstrasikan berbagai fungsi cURL di PHP
Cara Download File Menggunakan Curl di PHP
Membaca atau mengunduh file jarak jauh adalah salah satu kasus penggunaan cURL yang paling umum. Ini dilakukan dengan permintaan cURL GET, yang akan kita bahas di bagian ini
Lanjutkan dan buat curl_read_file. php dengan isi sebagai berikut
1<?php 2$url = '//www.example.com'; 34$curl = curl_init(); 56curl_setopt($curl, CURLOPT_URL, $url); <?php 0<?php 1<?php 2<?php 3<?php 4<?php 5<?php 6________2______7<?php 8_______2
Pada contoh di atas, kami telah menggunakan fungsi cURL untuk membaca halaman beranda contoh. domain com. Mari telusuri cuplikan penting untuk memahami cara kerjanya
Pertama, kami telah menggunakan fungsi 2_41 untuk menginisialisasi sesi cURL baru. Variabel 242 memegang pegangan cURL, yang dapat kita gunakan untuk mengatur berbagai opsi untuk transfer cURL dengan bantuan fungsi 243
Saat Anda bekerja dengan cURL, fungsi 243 adalah fungsi yang paling sering Anda tangani, karena memungkinkan Anda menginisialisasi berbagai opsi permintaan 245. Fungsi 243 mengambil tiga argumen. pegangan cURL, opsi 2_47, dan nilai opsi 247
Selanjutnya, kami telah menggunakan opsi 2_49 untuk menyetel URL permintaan ke 250 dengan fungsi 243. Selanjutnya, kami telah menyetel opsi 2_52 ke 253 karena kami ingin menginisialisasi respons ke dalam variabel 254. Jika kita tidak menyetelnya ke 253, respon akan ditampilkan langsung di layar. Terakhir, kami telah menyetel opsi 2_56 ke 257 untuk melewatkan informasi header di output
Terakhir, kami telah menggunakan fungsi 2_58 untuk mengeksekusi permintaan cURL. Jika semuanya berjalan dengan baik, variabel 2_54 harus berisi sumber halaman beranda 250
Cara Memposting Data Menggunakan Curl di PHP
Di bagian ini, kita akan melihat cara memposting data dengan cURL
Mari buat curl_post_example. php dengan isi sebagai berikut
1<?php 22334$curl = curl_init(); 5629<?php 0$url = '//www.example.com'; 1<?php 2$url = '//www.example.com'; 3<?php 4$url = '//www.example.com'; 5<?php 5$url = '//www.example.com'; 7<?php 7<?php 8303132curl_setopt($curl, CURLOPT_URL, $url); 343536373839<?php 64142<?php 9
Dalam contoh di atas, kami berasumsi bahwa kami perlu mengirimkan permintaan dengan metode HTTP POST. Bahkan, cara kerjanya mirip dengan mengirimkan formulir dengan metode POST
Variabel 261 menyimpan array nilai yang perlu kita kirimkan sebagai data POST. Selanjutnya, kami telah menggunakan fungsi 2_62 untuk menyiapkan string kueri yang disandikan URL
Selanjutnya, kami telah menyetel opsi 2_63 ke 253 untuk menyetel metode permintaan ke HTTP POST. Selanjutnya, kita perlu menggunakan opsi 2_65 untuk mengatur data POST yang ingin kita kirimkan bersama dengan permintaan
Terakhir, kami telah menggunakan fungsi 2_58 untuk mengeksekusi permintaan cURL. Jadi dengan cara ini, Anda dapat membuat permintaan cURL POST
Cara Memposting Data JSON Menggunakan cURL di PHP
Seringkali, Anda perlu mengirimkan data JSON dalam permintaan cURL POST. Di bagian ini, kita akan melihat cara mengirimkan data JSON dengan metode POST dalam permintaan cURL
Karena ini adalah permintaan POST, mari kita merevisi contoh yang baru saja kita bahas di bagian sebelumnya. Lanjutkan dan buat curl_post_json. php dengan isi sebagai berikut
1<?php 22334$curl = curl_init(); 5629<?php 0$url = '//www.example.com'; 1<?php 2$url = '//www.example.com'; 3<?php 4$url = '//www.example.com'; 5<?php 5$url = '//www.example.com'; 7<?php 7<?php 8543132curl_setopt($curl, CURLOPT_URL, $url); 34353661386339654142<?php 669curl_setopt($curl, CURLOPT_URL, $url); 0<?php 9
Meskipun mungkin terlihat mirip dengan contoh di bagian sebelumnya, yang penting adalah kita telah menggunakan fungsi 267 untuk membuat string JSON dari array 261
Selanjutnya, kami telah menggunakan opsi 2_69 untuk menyetel header 270 ke 271 untuk memberi tahu server API bahwa kami mengirimkan data JSON. Header 270 berguna untuk memposting data dalam format yang berbeda. Misalnya, jika Anda ingin mengirim data XML, Anda harus menyetel header ________0______70 ke 274
Kecuali untuk itu, hampir sama dengan permintaan POST biasa. Jadi dengan cara ini, Anda dapat memposting berbagai jenis data dengan menyetel header 270 yang sesuai. Jika Anda tidak mengatur header 2_70, itu akan menggunakan 277 sebagai nilai default
Cara Upload File Menggunakan Curl di PHP
Di bagian ini, kami akan membahas bagaimana Anda dapat mengunggah file dengan cURL
Mari buat curl_post_file. php dengan isi sebagai berikut
1<?php 22334$curl = curl_init(); 56<?php 01<?php 0<?php 03<?php 2<?php 05<?php 4<?php 07<?php 5<?php 09<?php 7<?php 82931$url = '//www.example.com'; 132$url = '//www.example.com'; 334<?php 1836<?php 2038$url = '//www.example.com'; 73941curl_setopt($curl, CURLOPT_URL, $url); 423569<?php 29curl_setopt($curl, CURLOPT_URL, $url); 0<?php 31<?php 32<?php 33<?php 6<?php 35<?php 36<?php 9
Saat Anda ingin mengunggah file, Anda harus membuat objek 278 terlebih dahulu. Mulai dari PHP5. 5+, cukup mudah untuk membuatnya, karena Anda hanya perlu menggunakan fungsi 279 untuk membuat objek 278. Argumen pertama dari fungsi 2_79 adalah jalur absolut dari file yang ingin Anda unggah
Jika Anda masih menggunakan versi PHP yang lebih lama, yang tidak disarankan, kami telah menggunakan sintaks fallback 282 untuk membuat tautan file
Terakhir, kami telah menyetel header 2_70 ke 284 karena ini akan menjadi permintaan POST formulir multi-bagian. Selain itu, ini adalah permintaan CURL POST rutin
Sejauh ini, kita telah melalui beberapa metode cURL berbeda yang sering digunakan dalam PHP. Di bagian selanjutnya, kita akan melihat bagaimana Anda dapat menggunakan pustaka Guzzle, yang mempermudah Anda saat berurusan dengan permintaan HTTP di PHP
Apa itu Klien HTTP Guzzle?
Sesuai dokumentasi resmi
Guzzle adalah klien HTTP PHP yang memudahkan pengiriman permintaan HTTP dan mudah untuk diintegrasikan dengan layanan web
Mari kita segera membahas manfaat menggunakan Guzzle daripada fungsi cURL PHP
- antarmuka sederhana untuk berbagai jenis data
- mendukung permintaan sinkron dan asinkron
- mendukung aliran cURL, soket, dan PHP
- Sesuai dengan PSR-7
- dan banyak lagi
Secara keseluruhan, ini adalah salah satu pustaka terbaik untuk digunakan saat Anda ingin melakukan panggilan HTTP dengan berbagai metode. Di bagian ini, kita akan membahas cara memasang Guzzle, diikuti dengan beberapa contoh singkat untuk mendemonstrasikan kekuatan pustaka ini
Cara Memasang Perpustakaan Guzzle
Dokumentasi resmi merekomendasikan agar Anda menggunakan Komposer untuk menginstal Guzzle. Mari jalankan perintah berikut untuk menginstal Guzzle di proyek Anda
1<?php 392<?php 413<?php 434<?php 455<?php 476<?php 49<?php 0<?php 51<?php 2<?php 53<?php 4<?php 55<?php 5<?php 57<?php 7<?php 59<?php 8<?php 6131<?php 6332<?php 6534<?php 67
Setelah terinstal, Anda perlu meminta autoloader Composer, seperti yang ditunjukkan pada cuplikan berikut
1<?php _69
Dan dengan itu, Anda siap menggunakan Guzzle
Cara Membuat Permintaan GET Dengan Guzzle
Di bagian ini, kita akan melihat cara mengirim permintaan GET dengan Guzzle
Kami akan merevisi contoh yang telah kami diskusikan sebelumnya, karena ini akan membantu Anda memahami bagaimana Anda dapat mengonversi kode PHP cURL yang ada menjadi implementasi berbasis Guzzle
Mari kita lihat contoh yang direvisi
1<?php 2<?php 6934<?php 765<?php 786<?php 0<?php 81
Bukankah itu mudah? . Dan sekarang, Anda memiliki akses ke banyak metode utilitas yang disediakan oleh kelas 285
Dalam kasus kita, kita perlu mengambil konten dengan metode GET, jadi kita telah menggunakan metode 288 dari kelas 285, dan itu akan mengembalikan objek 290. Objek ________0______90 menyediakan berbagai metode seperti 292, 293, 294, dan lainnya. Kami telah menggunakan metode 2_93 untuk mengambil isi isi tanggapan
Jadi begitulah cara Anda dapat melakukan permintaan HTTP GET dengan Guzzle
Cara Membuat Permintaan POST Dengan Guzzle
Di bagian ini, kita akan melihat bagaimana Anda dapat melakukan permintaan HTTP POST dengan Guzzle
Kami akan merevisi curl_post_example. php, yang telah kita bahas di bagian sebelumnya. Kode yang direvisi dengan Guzzle terlihat seperti ini
1<?php 2<?php 6934<?php 765<?php 906<?php 92<?php 0<?php 94<?php 2<?php 96<?php 4<?php 98<?php 5200<?php 7202<?php 83120532<?php 8134209
Karena ini adalah permintaan POST, kita perlu meneruskan larik 296 sebagai argumen kedua dari metode 297. Dalam contoh kami, ini berisi data formulir yang perlu kami kirimkan sebagai data POST
Jika Anda bertanya-tanya bagaimana cara memposting data JSON, Anda hanya perlu mengubah kunci 298 menjadi 299, dan data akan dikirim sebagai JSON
Juga, jika Anda ingin mengirim header HTTP apa pun bersama dengan permintaan, Anda dapat melakukannya dengan kunci $url = '//www.example.com'; 00, seperti yang ditunjukkan dalam cuplikan berikut
12112211321542175$url = '//www.example.com'; 76<?php 90<?php 0<?php 92<?php 2225<?php 4227<?php 5229<?php 7231<?php 8233312023221134211
Faktanya, pustaka Guzzle menyediakan banyak opsi konfigurasi untuk setiap metode. Selain itu, ada banyak cara untuk melakukan hal yang sama, jadi saya mendorong Anda untuk menjelajahinya secara mendetail, dan saya yakin ini akan menyenangkan.
Jadi itu adalah pengenalan cepat ke perpustakaan Guzzle, bersama dengan fungsi cURL PHP
Kesimpulan
Hari ini, kami menjelajahi dasar-dasar ekstensi cURL di PHP. Kami membahas bagaimana Anda dapat melakukan berbagai jenis permintaan HTTP dengan cURL di PHP. Selain itu, kami melalui pengenalan cepat ke pustaka Guzzle, yang membuat hidup lebih mudah bagi pengembang saat menangani permintaan HTTP di PHP