使用 JSON 文件中存储的汇率进行货币转换

发布于 2024-12-24 22:16:35 字数 569 浏览 4 评论 0原文

我正在尝试用 PHP 构建一个货币转换器功能。

我将所有费率缓存在 JSON 文件中。 (https://raw.github.com/currencybot/open-exchange-rates/master/latest.json)

我的脚本从 URL 获取 GET 值,如下所示:

.com?amnt=10&from=USD&to=GBP

我已经从这些值中获取了费率,如下所示:

    $string = file_get_contents("cache/latest.json");
    $jsonRates = json_decode($string, true);

    foreach ($jsonRates as $rates => $rate) {
        $fromRate = $rate[$from];
        $toRate = $rate[$to];
    }   

现在我陷入困境。我拥有我需要的一切,但我不知道如何处理它。在这种特定情况下,如何将 $amnt 变量从美元转换为英镑。

谢谢!

I'm attempting to build a currency converter function in PHP.

I have all my rates cached in a JSON file. (https://raw.github.com/currencybot/open-exchange-rates/master/latest.json)

My script takes GET values from the URL like so:

.com?amnt=10&from=USD&to=GBP

I've accessed the rates from those values like so:

    $string = file_get_contents("cache/latest.json");
    $jsonRates = json_decode($string, true);

    foreach ($jsonRates as $rates => $rate) {
        $fromRate = $rate[$from];
        $toRate = $rate[$to];
    }   

Now I'm stuck. I have everything I need, I just have no idea what to do with it. How do I convert the $amnt variable from USD to GBP in this particular scenario.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

软的没边 2024-12-31 22:16:35

您正在寻找类似的东西,但这仅适用于美元。

    $string = file_get_contents("cache/latest.json");
    $jsonRates = json_decode($string, true);

    foreach ($jsonRates["rates"] as $currency => $rate) {
        if($currency==$_GET["to"]) {
            echo $_GET["amnt"] * $rate;
            break;
        }
    }

尝试执行所有转换:

echo number_format(($_GET["amnt"]/$jsonRates["rates"][$_GET["from"]])*$jsonRates["rates"][$_GET["to"]],3);

You're looking for something like this, but this only works FROM USD.

    $string = file_get_contents("cache/latest.json");
    $jsonRates = json_decode($string, true);

    foreach ($jsonRates["rates"] as $currency => $rate) {
        if($currency==$_GET["to"]) {
            echo $_GET["amnt"] * $rate;
            break;
        }
    }

Try this to do all conversions:

echo number_format(($_GET["amnt"]/$jsonRates["rates"][$_GET["from"]])*$jsonRates["rates"][$_GET["to"]],3);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文