bbcsystem::curl

mangambil isi content dari url luar, atau dengan istilah lain meng-grab content dari website lain

curl($url, $param=array(), $option=array(), $is_debug = false);

  • $url: String URL yang akan di grab atau diambil isinya
  • $param:
    • Integer maka akan menyimpan hasil grab sebagai cache yang akan berlaku sesuai nilai $param tersebut dalam hitungan detik
    • Array maka system akan menggunakan array tersebut sebagai variable yang akan di POST kan ke $url
  • $option:
    • Array yang akan digunakan sebagai header untuk index key yang tersedia bisa dilihat di curl_setopt untuk lebih detail
    • Integer angka '1' digunakan untuk meng-encode 'CURLOPT_HTTPHEADER' dengan nilai default dari browser
  • $is_debug: Boolean apakah ingin melihat log hasil grab nya ataukan tidak
contoh:
$url  = 'http://anydomain.ltd/any/path';
$post = array(
	'username' => 'my_username',
	'password' => 'my_secret'
	);
$header = array(
	'CURLOPT_USERAGENT' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15'
	);
$output = $sys->curl($url, $post, $header);

untuk kondisi tertentu, terkadang server pihak ke 3 memerlukan urlencode dalam untuk CURLOPT_HTTPHEADER jadi anda perlu untuk meng-encode
$url  = 'http://anydomain.ltd/any/path';
$post = array(
	'username' => 'my_username',
	'password' => 'my_secret'
	);
$header = array(
	'CURLOPT_USERAGENT' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Safari/605.1.15',
	'CURLOPT_HTTPHEADER' => array(
		'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
		'Accept-Language: en-US,en;q=0.5',
		'Accept-Encoding: gzip, deflate',
		'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7',
		'Keep-Alive: 300',
		'Connection: keep-alive',
		'Content-Type: application/x-www-form-urlencoded')
	);
$header['CURLOPT_HTTPHEADER'] = urlencode_r($header['CURLOPT_HTTPHEADER']);
$output = $sys->curl($url, $post, $header);

tetapi jika header ingin menggunakan nilai default dan hanya ingin menggunakan urlencode saja anda bisa mengganti argument ke 3 menjadi angka satu, contoh:
$output = $sys->curl($url, $post, 1);

 

File Path: includes/system/bbcsystem.php file untuk routing dalam framework, sudah dipanggil secara otomatis dan masuk ke dalam variable $sys yang akan menjadi variable global

0 Comment

Post Your Comment

Terakhir Dilihat

Method Tersedia