You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中rate字段无法显示,求排查原因及解决方法

无法输出汇率(rate)的原因及解决办法

问题原因

你的代码中直接返回了$result['result'],但从API返回的结构来看,result是一个关联数组,包含NPR(转换后金额)和rate(汇率)两个子字段。直接输出数组会被PHP自动转为字符串Array,导致无法显示正确的汇率数值。

API返回结构示例:

{"base": "AED", "amount": 1, "result": {"NPR": 35.56, "rate": 35.5597}, "ms": 5}

解决代码

修改代码,直接访问数组中的rate字段即可:

<?php

// 创建汇率转换短代码
function currency_conversion_shortcode() {
    $url = "https://api.fastforex.io/convert?from=AED&to=NPR&amount=1&api_key=xxxxx-xxxx-xxxxx";// 已刻意添加API密钥

    $result = file_get_contents($url);
    $result = json_decode($result, true);

    // 确保rate字段存在后再输出,避免报错
    if (isset($result['result']['rate'])) {
        return $result['result']['rate'] . " NPR";
    } else {
        return "无法获取汇率";
    }
}
add_shortcode( 'currency_conversion', 'currency_conversion_shortcode' );

?>

关键修改点

  • 替换$result['result']为$result['result']['rate'],直接提取汇率值
  • 增加isset()判断,防止API返回异常时出现PHP错误

内容的提问来源于stack exchange,提问作者John

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 08:10:24