PHP

Mengambil Data dari URL Lain Menggunakan cURL

Oleh Wak Jek• 11 Komentar Arsip

Penggunaan cURL di PHP (bagian 1)

Secara umum, cURL adalah perangkat lunak yang digunakan untuk mentransfer data dari dan ke server. Sebenarnya ada banyak perangkat transfer data layaknya cURL, namun cURL memiliki fitur yang lebih lengkap diantara perangkat-perangkat lainnya. Diantaranya dukungan terhadap HTTP, FTP, SFTP, SOCKS, TFTP, IMAP, POP3, SMTP dan lain-lain.

Agar dapat menggunakan cURL pada pemrograman PHP, kita harus menginstal ekstensi libcurl. Tapi tidak usah panik, karena biasanya cURL ini sudah terinstal pada sebagian besar webhosting yang support PHP maupun pada paket instalasi WAMP (Windows Apache MySQL, PHP) seperti Wampserver, XAMPP, PHPThriad dan sebagainya.

Untuk memastikan apakah ekstensi cURL sudah terinstal di PHP, ketikkan perintah berikut di file PHP dan preview di browser Anda.

<?php

echo 'cURL '.(function_exists('curl_init') ? ' sudah' : ' tidak').'  terinstal';

?>

Jika hasil outputnya adalah “cURL sudah terinstal” maka Anda sudah dapat menggunakan cURL, namun jika hasilnya adalah “cURL tidak terinstal” berarti cURL belum diinstal atau belum diaktifkan.

Mengaktifkan cURL di Localhost

  1. Bukalah file php.ini menggunakan notepad atau text editor Anda. File php.ini dapat ditemukan di folder instalasi sever lokal Anda, biasanya di folder C:xamppbinphpphp.ini (xampp) atau di C:wampbinphpphp.x.xphp.ini (wampserver, x.x adalah versi PHP yang digunakan)
  2. Setelah file php.ini terbuka, carilah baris ;extension=php_curl.dll dan hapuslah tanda titik koma (;) di depan baris tersebut, sehingga menjadi extension=php_curl.dll
  3. Restart Apache dan lakukan pengecekan lagi seperti di atas.

Tips: Pada wampserver anda dapat dengan mudah mengaktifkan cURL tanpa harus mengedit file php.ini, yakni dengan cara klik icon wampserver di systray, pilih menu PHP => PHP extension => php_curl. Pastikan menu php_curl di ceklist.

Fungsi-fungsi cURL

Sebelum memulai penggunaan cURL, ada baiknya memahami fungsi-fungsi dasar dari cURL yang umum digunakan. Fungsi-fungsi tersebut diantaranya:

  • curl_init = memulai sesi cURL
  • curl_setopt = menentukan opsi-opsi sebelum menjalankan cURL.
  • curl_exec = menjalankaan cURL.
  • curl_close = menutup sesi cURL.

Menggunakan cURL untuk Mengambil Data

Setelah mengaktifkan cURL di PHP dan mengetahui beberapa fungsi-fungsi cURL, sekarang kita coba menggunakan fasilitas cURL yang paling sederhana, yaitu mengambil data dari URL. Langkah-langkahnya adalah sebagai berikut:

1. Buatlah sebuah file PHP di localhost, beri nama dengan data.php, isinya sebagai berikut:

<?php

echo "Ini adalah data di file data.php";

?>

Pastikan file tersebut dapat diakses dari http://localhost/test/curl/data.php (nama folder sesuaikan dengan keinginan).  Lihat gambar berikut:

2. Kemudian buatlah file latihan-curl-1.php dimana kita akan memasukkan fungsi curl di sini.Isinya sebagai berikut:

<?php

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL,'http://localhost/test/curl/data.php');

curl_exec($ch);

curl_close($ch);

?>

Penjelasan:

[php firstline="2"]$ch = curl_init();[/php]

  • Memulai sesi cURL, untuk memulai sesi cURL dengan menggunakan fungsi curl_init() dan menyimpannya pada variabel $ch.

[php firstline="2"]
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,’http://localhost/test/curl/data.php’);[/php]

  • Menentukan opsi curl, untuk menentukan opsi gunakan fungsi curl_setopt()
  • $ch adalah resource dari curl_init() yang kita simpan sebelumnya.
  • CURLOPT_URL, adalah opsi untuk menentukan URL yang akan diambil datanya.
  • http://localhost/test/curl/data.php adalah URL dari website yang akan diambil datanya.

[php firstline="4"]curl_exec($ch);[/php]

  • Mengeksekusi cURL dengan curl_exec() dan menampilkannya ke browser..

[php firstline="5"]curl_close($ch);[/php]

  • Menutup sesi cURL dengan curl_close($ch))

3. Sekarang saatnya melihat hasil cURL nya dengan megarahkan browse ke URL http://localhost/test/curl/latihan-curl-1.php. Lihat gambar berikut:

Nah, hasil output dari file latihan-curl-1.php adalah sama persis dengan hasil output dari file data.php. Berarti kita berhasil mengambil data dari URL http://localhost/test/curl/data.php menggunakan cURL.

Sekian dulu bahasan kita kali ini tentang dasar-dasar penggunaan cURL di php. Dengan menggunakan cURL kita dapat mengambil data dari URL lain dan menampilkannya di PHP.

Sebenarnya data yang dapat diambil tidak terbatas pada data pada domain yang sama, tapi bisa juga untuk mengambil data dari URL/domain lain di internet. Namun hal tersebut akan kita bahas pada artikel di edisi mendatang. (takien@w3magz.com)

Bersambung…

Referensi:

http://curl.haxx.se

http://php.net/manual/en/book.curl.php

Tulisan ini sudah berumur: 15 tahun 8 bulan 20 hari. Informasi di dalamnya mungkin sudah tidak relevan, tapi nilai historisnya sangat berharga, terutama bagi saya sebagai penulisnya.

(Dipulihkan dari w3magz.com)

Komentar (11)

Arsip Statis
rawiz
pertamax.. mangstab… ditunggu part berikutnya… rikues, studi kasus sederhana, mengambil info kurs terkini dari website2 perbankan.. :ngacir:
ianlubis
Saya tambahkan untuk installasi curl pada APPSERV Pertama, masuk ke folder appserv di install C:AppServphp5 lalu cari file : * ssleay32.dll * libeay32.dll Setelah itu copy kedua file tersebut ke directory C:windowssystem32 Lalu buka PHP.INI melalui start > program > appserv > configuration server > PHP edit the php.ini Configuration File lalu cari tulisan ;from extension=php_curl.dll hapus tanda titik koma setelah itu restart komputer anda
Tegarmaji
klo yg dari om ianlubis ini jd artikel baru, berarti artikel om takien jd part 2. part 1nya skalian diisi lengkap cara instalasinya
ianlubis
Oh…. tidak bisa….. artikel om Takien adalah part 1, saya cuma menambahkan ajah kok… kebetulan saya tau dikit….
dieka2501
kerennn,,,,, walah,,, ane jadi bisa balajar bnyak inih..
FeRRi
mantaabb bgt om lengkap ada xampp ama wamp lg
abonk
mantap ini mah hehe, tak cobain ngecurl takien.com bisa ga ya hehe
Bintangweb
Dari dulu belajar curl gak ngerti-ngerti. Untung ada artikel bro takien. Jadi semangat belajar lagi.
heru
sebelum tahu curl,, saya sering menggunakan iframe,,
tian
wah keren tutorialnya, terima kasih
Jeff Hadianto
mas kalau menampilkan file gambar dengan cURL gmana ya?