lostyazilim
tr.link

File get contents php

2 Mesajlar 566 Okunma
lstbozum
tr.link

cc33 cc33 WM Aracı Kullanıcı
  • Üyelik 14.03.2020
  • Yaş/Cinsiyet 29 / E
  • Meslek web master
  • Konum Mersin
  • Ad Soyad Ç** C**
  • Mesajlar 75
  • Beğeniler 3 / 2
  • Ticaret 0, (%0)
Merhaba ark file get contents ile kur değerlerini çekiyorum yaklaşık 30 adet ve buda ister istemez sayfanın geç yüklenmesine sebebiyet veriyor bunu nasıl çözerim curl fonksiyonu önerdiler fakat kullanmayı bilmiyorum veya başka fikri olan pylaşırsa cokk sevinirim

Ayrı etten hostingden sunucuya geçersem bu yavaşlık kalkarmı ?
 

 

wmaraci
reklam

Decimas Decimas WM Aracı Kullanıcı
  • Üyelik 19.04.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek Developer
  • Konum İstanbul Avrupa
  • Ad Soyad E** E**
  • Mesajlar 820
  • Beğeniler 1 / 302
  • Ticaret 1, (%100)
API ile 30 veri ms hızında sonuç vermeli. Bu veriyi çekerken yavaşlık söz konusu ise sunucuya geçemeni gerektirecek bir şey yok, sorun ya karşı sunucuda ya da senin kodlarında.

Buyur ufak bir curl fonksiyonu,

/**
* Custom curl function
*
* @param string $url : target URL
* @see source: https://stackoverflow.com/a/14953910
* @return mixed
*/
public function curl($url, $user_agent = null, $returnData = true)
{
$user_agent = $user_agent ? $user_agent : 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1';
$options = array(
CURLOPT_CUSTOMREQUEST => "GET", //set request type post or get
CURLOPT_POST => false, //set to GET
CURLOPT_USERAGENT => $user_agent, //set user agent
CURLOPT_COOKIEFILE => "cookie.txt", //set cookie file
CURLOPT_COOKIEJAR => "cookie.txt", //set cookie jar
CURLOPT_RETURNTRANSFER => true, // return web page
CURLOPT_HEADER => false, // don't return headers
CURLOPT_FOLLOWLOCATION => true, // follow redirects
CURLOPT_ENCODING => "", // handle all encodings
CURLOPT_AUTOREFERER => true, // set referer on redirect
CURLOPT_CONNECTTIMEOUT => 20, // timeout on connect
CURLOPT_TIMEOUT => 20, // timeout on response
CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
);

$ch = curl_init($url);
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
$err = curl_errno($ch);
$errmsg = curl_error($ch);
$header = curl_getinfo($ch);
curl_close($ch);

if ($returnData){
return $content;
}

$header['errno'] = $err;
$header['errmsg'] = $errmsg;
$header['content'] = $content;

return $header;
}


curl('link')['content']; şeklinde deneyebilirsin.
 

 

no time for caution
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al