【问题标题】:trouble Currency conversion formula麻烦货币换算公式
【发布时间】:2013-10-31 18:11:49
【问题描述】:

我有一个包含货币列表及其汇率的数据库,我也有它们的历史记录,基本汇率是美元,

现在的问题是我的用户选择不同的基本费率,即 AED、EGP、BRL

我需要根据用户选择的基本费率动态转换我的所有值。

问:汇率转换的公式是什么,有没有 php 或 mysql 的方法。

我对此进行了高低搜索,但我一直被踩在脚下

【问题讨论】:

  • 没有php或mysql的方式,这是一道简单的数学题。你有每种货币的兑换率吗?我建议您以一种货币(美元)保存所有值,当您以另一种货币显示时,乘以汇率
  • 请给我们一些您数据库表中的示例行
  • $amount*$usd_rate 也许?
  • 有费率,但我不知道如何转换,我读了一些文章,但似乎没有正确
  • base 现在是 EGP -Egyptian pound -6.8932,所以我需要将所有货币转换为 egp

标签: php type-conversion rates


【解决方案1】:

一种非常简单的方法是使用免费提供的 API,例如 apppot 的 rateexchange:http://rate-exchange.appspot.com/currency?from=USD&to=EGP&q=10

其中 from= 源货币,to= 目标货币,q= 源货币数量。

然后您可以轻松地使用 PHP 的 cURL 获取结果 JSON,并使用 json_decode 将其转换为可用的 PHP。

例子:

function get($url)
{ 
    $ch = curl_init ($url);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
    return curl_exec ($ch);
}

$json = get("http://rate-exchange.appspot.com/currency?from=USD&to=EUR&q=10");
$array = json_decode($json, true);

print_r($array);

【讨论】:

  • 谢谢,我会考虑如何实现这一点,但问题是我有超过 50 种货币可以兑换,而且还有历史所以如果想看 1 个月,我该怎么做呢
  • 这是一项艰巨的任务!我建议直接使用 Google 的货币 API code.google.com/p/currency-converter-api —— 实现起来更具挑战性,但将具有所有历史功能和返回多个结果的能力。您可能会发现自己需要在本地数据库中缓存一些数据?这是一个基于他们的 API 构建的更复杂网站的示例:currencies.apps.grandtrunk.net
  • 另一种选择,如果您不热衷于使用 Google,Yahoo 提供了类似的金融 API,实际上提供了一个 php 库:code.google.com/p/yahoo-finance-managed/wiki/MainPage?tm=6
  • 谢谢大家的建议,我去雅虎和谷歌看看
  • 请注意,google 和 yahoo 并非免费用于商业用途。转换公式非常简单。根据定义,您始终存储针对基础货币的汇率。所以假设你有 Currency1、Currency2 和 CurrencyBase。您将 Currency1/CurrencyBase 的汇率存储为 Cur1Rate,将 Currency2/CurrencyBase 的汇率存储为 Cur2Rate。获得 Currency1/Currency2 汇率 Cur1Rate/Cur2Rate。您可以根据需要动态地执行此操作。我在我的网站currency.creative-dreaming.com/Home/Resources 上做这件事(免责声明这是我自己的商业网站)。
猜你喜欢
  • 2012-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多