Howdy guys…

Introduksi

Bismillah! langsung saja, tulisan saya berikut ini merupakan lanjutan dari tulisan saya yang sebelumnya, yakni Mencoba Yahoo! Pipes (Mashup Editor). kalau pada tulisan sebelumnya lebih membahas kepada bagaimana mencoba mendesain “Our Own Pipes” dan menggunakannya, maka pada tulisan ini lebih kepada bagaimana mendapatkan “Output” yang dihasilkan dari nge-run Pipes rancangan kita dengan menggunakan PHP.

Dalam melakukan ujicoba ini, saya menggunakan web-server Apache yang ada pada paket aplikasi XAMPP (for windows), dengan fungsi cURL yang sudah diaktifkan. Untuk mengaktifkan fungsi tersebut cukup dengan meng-edit file php.ini yang ada pada direktori “xampp/php/php.ini” dan juga “xampp/apache/bin/php.ini”.

buka file php.ini tersebut kemudian cari dibagian extension yang mengandung tulisan curl (php_curl.dll). setelah ketemu, buang tanda titik-komah (;) didepan extension tersebut. jangan lupa, restart Apache!!

Penjelasan

cURL!! Apa itu cURL !? waduh, secara terminologi jelas2 ak ndak bisa menjelaskan karena menurutku lebih enak penjelasannya kalo langsung tak jelaskan kayak gini: Intinya itu, dengan menggunakan fungsi PHP yang satu ini, kita dapat mengambil/mengunduh/mendapatkan sebuah file/content/isi dari sebuah halaman web. Dan kasus kali ini yang ingin saya dapatkan adalah HASIL/OUTPUT dari Yahoo! Pipes.

SIMPLE!! itulah penggunaan dari fungsi cURL dalam PHP.


<?php
//inisialisasi curl
$ch = curl_init();//Set the curl options
curl_setopt($ch, CURLOPT_URL, "your_source_url");
curl_setopt($ch, CURLOPT_FILE, "your_destination_file");
curl_setopt($ch, CURLOPT_HEADER, 0);

//execute curl
curl_exec($ch);

//close the stream
curl_close($ch);
?>

Diawali dengan curl_init() dan diakhiri dengan curl_close(), sebuah konten web sudah bisa kita dapatkan.

sesuai dengan judul diatas, maka berikut saya sertakan contoh barisan kode untuk mendapatkan Output dari Yahoo! Pipes. Output tersebut dapat berupa berbagai ekstensi file yang kita inginkan (seperti rss, json, php,dll) sesuai output yang disupport oleh Yahoo! Pipes.

<?phpfunction cURLcheckBasicFunctions(){if( !function_exists("curl_init") &&!function_exists("curl_setopt") &&!function_exists("curl_exec") &&

!function_exists("curl_close") ) return false;

else return true;

}

/*

* Returns string status information.

* Can be changed to int or bool return types.

*/

function cURLdownload($url, $file)

{

if( !cURLcheckBasicFunctions() ) return "UNAVAILABLE: cURL Basic Functions";

$ch = curl_init();

if($ch)

{

$fp = fopen($file, "w");

if($fp)

{

if( !curl_setopt($ch, CURLOPT_URL, $url) ) return "FAIL: curl_setopt(CURLOPT_URL)";

if( !curl_setopt($ch, CURLOPT_FILE, $fp) ) return "FAIL: curl_setopt(CURLOPT_FILE)";

if( !curl_setopt($ch, CURLOPT_HEADER, 0) ) return "FAIL: curl_setopt(CURLOPT_HEADER)";

if( !curl_exec($ch) ) return "FAIL: curl_exec()";

curl_close($ch);

fclose($fp);

return "SUCCESS: $file [$url]";

}

else return "FAIL: fopen()";

}

else return "FAIL: curl_init()";

}

// Download them
echo cURLdownload("http://pipes.yahoo.com/pipes/pipe.run?_id=0cc09fbad56d81a2d53894611905bea4&_render=json", "file.json");

?>

Pendefinisian alamat Yahoo! Pipes ada pada barisan kode yang paling bawah (cetak tebal). Kode _id=0cc09fbad56d81a2d53894611905bea4 merupakan enkripsi dari ID Yahoo! saya. Sedangkan _render=json merupakan format output yang diinginkan dan format ini bisa diubah sesuai keinginan (misal php, rss,dll). Terakhir, file.json merupakan nama file yang kita inginkan untuk menyimpan konten yang didapatkan.

Note!! in this case, i use my own Pipes. For your needs, Go! Get your own Pipes.

that’s all guys. thanks for reading and see you soon…🙂