2014-02-20 80 views
0

我發現/被黑客入侵(並且我的意思是黑客入侵,我知道這並不漂亮)下面的代碼。使用Yahoo Finance在PHP中獲取貨幣的買賣價格

我是什麼來完成:

  • 同時獲得ASK /投標金額爲3種貨幣
  • 貨幣是美元,BRL,
  • 歐元基礎貨幣ARS
  • 避免過於花哨,我只需要回顯6個值(每種貨幣的出價/詢問從基礎貨幣)

我能夠得到我認爲是阿維拉ge rate,但我不確定如何獲得bid/ask值。

我注意到: - 如果你改變$ usd_allData [1]到$ usd_allData [2],你得到的日期 - 如果你改變$ usd_allData [1]到$ usd_allData [3],你得到的時間

如果您有任何見解或閃光的天才,請發送給我的方式。

提前致謝!


<?php 

/* USD 
------------------------- */ 
$usd_from = 'USD'; /*change it to your required currencies */ 
$usd_to  = 'ARS'; 
$usd_url = 'http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s='. $usd_from . $usd_to .'=X'; 
$usd_handle = @fopen($usd_url, 'r'); 

if ($usd_handle) { 
    $usd_result = fgets($usd_handle, 4096); 
    fclose($usd_handle); 
} 
$usd_allData = explode(',',$usd_result); /* Get all the contents to an array */ 
$usd_Value = $usd_allData[1]; 

/* EUR 
------------------------- */ 
$eur_from = 'EUR'; /*change it to your required currencies */ 
$eur_to  = 'ARS'; 
$eur_url = 'http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s='. $eur_from . $eur_to .'=X'; 
$eur_handle = @fopen($eur_url, 'r'); 

if ($eur_handle) { 
    $eur_result = fgets($eur_handle, 4096); 
    fclose($eur_handle); 
} 
$eur_allData = explode(',',$eur_result); /* Get all the contents to an array */ 
$eur_Value = $eur_allData[1]; 

/* BRL 
------------------------- */ 
$brl_from = 'BRL'; /*change it to your required currencies */ 
$brl_to  = 'ARS'; 
$brl_url = 'http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s='. $brl_from .  $brl_to .'=X'; 
$brl_handle = @fopen($brl_url, 'r'); 

if ($brl_handle) { 
    $brl_result = fgets($brl_handle, 4096); 
    fclose($brl_handle); 
} 
$brl_allData = explode(',',$brl_result); /* Get all the contents to an array */ 
$brl_Value = $brl_allData[1]; 

echo (
    $usd_Value . '<br><hr>' . 
    $eur_Value . '<br><hr>' . 
    $brl_Value 
) 

?> 

回答

0

你剛剛度過我的一天。做一個「數組的print_'r,然後快速谷歌搜索使我這個文章,題爲」 Yahoo Finance (hidden) API

原來,該位是關鍵:

http://finance.yahoo.com/d/quotes.csv?e=.csv&f=sl1d1t1&s=

具體地,下文中這樣的:

& F =

接下來的字母會得到相應的變量。所以,這得到了sl1,d1,t1。

sl1d1t1

改變這種下面的位(B2,B3),獲取實時的買入價和賣出PICE(這是多麼準確,我不知道)

sl1d1t1b2b3

巨大,巨大,巨大的感謝!