0

我发现/黑了(我的意思是黑了,我知道它不漂亮)下面的代码。

我要完成的工作:

  • 获取 3 种货币的卖价/卖价
  • 货币为美元、巴西雷亚尔、
  • EUR 基础货币为 ARS
  • 避免太花哨,我只需要回显 6 个值(从基础货币中对每种货币进行出价/询价)

我能够得到我认为的平均价格,但我不确定如何获得出价/要价。

我确实注意到: - 如果您将 $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 
)

?>
4

2 回答 2

1

你有没有想过谷歌而不是雅虎?需要用于货币转换的 API

我也只是 print_r() 你的数组来看看会出现什么,而不是逐项挑选它。

于 2014-02-20T23:36:27.463 回答
0

你让我今天很开心。对数组进行 'print_'r 操作,然后进行快速 Google 搜索,我找到了这篇题为“ Yahoo Finance (hidden) API ”的文章

事实证明,这一点是关键:

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

具体来说,如下:

&f=

其后的字母得到相应的变量。所以,这得到 sl1, d1, t1。

sl1d1t1

将其更改为下面的位(b2,b3),获取实时出价和要价(它有多准确,我不知道)

sl1d1t1b2b3

非常,非常,非常感谢!

于 2014-02-21T00:07:38.823 回答