lostyazilim
tr.link

Fonksiyon İçinde Birden Fazla Return Kullanmak

3 Mesajlar 628 Okunma
lstbozum
tr.link

theharunuysal theharunuysal WM Aracı Kullanıcı
  • Üyelik 21.06.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek .
  • Konum Ankara
  • Ad Soyad H** U**
  • Mesajlar 1879
  • Beğeniler 596 / 202
  • Ticaret 19, (%95)
İnveting borsasından kripto para kurlarını çekiyorum. Fonksiyonları yeni yeni öğrenmeye başladım. Aklıma takılan gördüğünüz gibi bir sayfa üzerinden 4 farklı veri çektim. Haliyle 4 farklı return kullanmak zorunda kaldım fakat fonksiyon dışında echo $url; yazdığımda sadece bitcoin değerini veriyor. Nasıl çözebilirim ?


function borsa($site)
{

$ch = curl_init();
$hc = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36";
curl_setopt($ch, CURLOPT_REFERER, 'https://tr.investing.com/');
curl_setopt($ch, CURLOPT_URL, $site);
curl_setopt($ch, CURLOPT_USERAGENT, $hc);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd () . '/cookies.txt' ); // çerezler
// curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd () . '/cookies.txt' ); // çerezlerin saklanacağı dosya
$site = curl_exec($ch);
curl_close($ch);

// Veriyi parçalama işlemi
preg_match_all('@(.*?)@si',$site,$kripto);


$btc = $kripto[3][3];
$btc = str_replace(".", "", $btc);
$btc = str_replace(",", ".", $btc);

$xrp = $kripto[3][1];
$xrp = str_replace(",", ".", $xrp);

$eth = $kripto[3][2];
$eth = str_replace(",", ".", $eth);

$btg = $kripto[3][0];
$btg = str_replace(",", ".", $btg);


return $btc;
return $xrp;
return $eth;
return $btg;

}
$link = "https://tr.investing.com/portfolio/?portfolioID=id";
$url = borsa($link);
 

 

wmaraci
reklam

WordPressUzmani WordPressUzmani WM Aracı Kullanıcı
  • Üyelik 25.01.2016
  • Yaş/Cinsiyet 30 / E
  • Meslek İşletme ve WordPress Uzmanı
  • Konum İstanbul Avrupa
  • Ad Soyad M** A**
  • Mesajlar 134
  • Beğeniler 25 / 70
  • Ticaret 50, (%100)
return fonkisyonu sonuçlandırır ve bitirir. Bu nedenle bir noktada return kullanırsan buradan sonrasına bakılmaz.

return kısmını şu şekilde değiştirin.

return array("BTC" => $btc, "XRP" => $xrp, "ETH" => $eth, "BTG" => $btg);

fonksiyon sunuçlarını da şu şekilde kullanabilirsin.


$fiyat = borsa(site adresi);

echo $fiyat["BTC"];
echo $fiyat["XRP"];
echo $fiyat["ETH"];
echo $fiyat["BTG"];

theharunuysal

kişi bu mesajı beğendi.

theharunuysal theharunuysal WM Aracı Kullanıcı
  • Üyelik 21.06.2015
  • Yaş/Cinsiyet 26 / E
  • Meslek .
  • Konum Ankara
  • Ad Soyad H** U**
  • Mesajlar 1879
  • Beğeniler 596 / 202
  • Ticaret 19, (%95)
WordPressUzmani , Çok teşekkür ederim yeni bir şey öğrenmiş oldum sayenizde.
 

 

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