cURL nedir? Ne İşe Yarar?
cURL nedir? Ne İşe Yarar?
Öncelikle curl ne işe yarar ona değinelim. Curl fonksiyonu ile file_get_contents gibi diğer sitelerin kaynak kodunu çekebilir, diğer sitelerden hostunuza dosya download edebilirsiniz. file_get_contents den farklı olarak istediğiniz siteye login olabilirsiniz, referrer, cookie ve useragent gibi bilgilerinizi değiştirebilirsiniz, yada isterseniz proxy ile bağlanabilirsiniz. Ayrıca file_get_contents e göre sunucuyu daha az yorar ve daha performanslıdır.
Öncelikle curl ne işe yarar ona değinelim. Curl fonksiyonu ile file_get_contents gibi diğer sitelerin kaynak kodunu çekebilir, diğer sitelerden hostunuza dosya download edebilirsiniz. file_get_contents den farklı olarak istediğiniz siteye login olabilirsiniz, referrer, cookie ve useragent gibi bilgilerinizi değiştirebilirsiniz, yada isterseniz proxy ile bağlanabilirsiniz. Ayrıca file_get_contents e göre sunucuyu daha az yorar ve daha performanslıdır.
Kullanımında temel olarak birkaç fonksiyon ile uygulanır. Onları öğrenelim önce;
curl_init() : curl oturumunu açar.
curl_setopt(): referrer, url, useragent, postdata gibi ayarların yapıldığı fonksiyon.
curl_exec(): bu fonksiyon yazılana kadar olan curl fonksiyonlarını işleme sokar ve gelen veriyi alır.
curl_close(): curl oturumunu kapatır.
curl_setopt(): referrer, url, useragent, postdata gibi ayarların yapıldığı fonksiyon.
curl_exec(): bu fonksiyon yazılana kadar olan curl fonksiyonlarını işleme sokar ve gelen veriyi alır.
curl_close(): curl oturumunu kapatır.
Temel yapı ve kullanım sırası bu şekildedir:
- curl_init() oturumunu açtığımızda diğer fonksiyonlarda o oturum ile çalıştığımızı belirtmeliyiz. Yani;
1
|
$ch = curl_init(); |
- Burada $ch değişkenimize bir oturum açtık, bundan sonraki işlemlerimizde bu oturum ile işlem yapacağız. Örneğin ref5 sitesine bağlanacaksak
1
|
curl_setopt( $ch , CURLOPT_URL,"http: //ref5.net"); |
- Şeklinde olacak. Burada curl_setopt fonksiyonu ile curl de yapacağımız işlemleri belirtiyoruz. Kullanımı şu formattadır;
1
|
curl_setopt(curl_oturumu,yapılacak_işlem,işlem_değişkeni); |
- Üstte yazdığımız CURLOPT_URL işlemi, gidilecek url adresini belirtir.
- En önemli kısım, curl_exec fonksiyonudur. Kullanımı şu şekilde;
- En önemli kısım, curl_exec fonksiyonudur. Kullanımı şu şekilde;
1
|
curl_exec( $ch ); |
- Yani içine işlemler tanımladığımız oturumumuzu işleme sokar, ve işlem sonundaki verileri gösterir. Bu şekilde kullandığımızda aldığı verileri direk ekrana yazdırır. Bunu önlemek için gelen verileri bir değişkene almamız gerekir.
1
|
$veri = curl_exec( $ch ); |
- Bu şekilde gelen verileri $veri değişkenine aktardık. Daha sonra bu değişkende işimize yarayan kısımları ayıklayarak istediğimiz yerde kullanabiliriz.
- Son olarak geldik curl oturumumuzu kapatmaya.
- Son olarak geldik curl oturumumuzu kapatmaya.
1
|
curl_close( $ch ); |
- Şeklinde kodlamamızı bitiriyoruz.
- Toparlarsak, genel kullanıma örnek bir kodla özetleyelim;
1
2
3
4
5
6
|
$ch = curl_init(); // oturumumuzu açtık<br /> curl_setopt( $ch , CURLOPT_URL , "http: //ref5.net" ); // ref5 url sine bağlanma işlemi tanımladık<br /> $veri = curl_exec( $ch ); // oturumu işleme soktuk ve gelen veriyi $veri değişkenine aldık<br /> curl_close( $ch ); // oturumu kapattık</p> <p> echo $veri ; // oturumdan gelen $veri değişkenini ekrana yazdırdık</p> <p> |