2014-02-20 81 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

巨大,巨大,巨大的感谢!