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

PHP筛选API返回数组指定交易对行返回空数组如何解决

问题原因

  • 类型不匹配错误:你声明的$searchCoin是数组类型['DOGE/USDT'],而数组元素里的$row['symbol']是字符串类型,二者做===全等判断永远返回false,所以过滤结果为空。
  • 额外优化点:你拿到的返回数组的外层键本身就是交易对符号,不需要遍历整个数组做过滤,直接通过键访问就能拿到对应数据,性能更高。

解决方法

方法1:修正原过滤逻辑(适合多交易对查询场景)

如果你需要同时查询多个交易对,可以把搜索列表存为数组,用in_array判断符号是否在搜索列表中:

$coins =  $coinex->fetch_tickers();
$searchCoin = ['DOGE/USDT']; // 可同时添加多个交易对,例如 ['DOGE/USDT', 'ETC/USDT']
$filteredArray = array_filter($coins, function($row) use ($searchCoin){
    return in_array($row['symbol'], $searchCoin);
});
print('<pre>');
print_r($filteredArray);
print('</pre>'); // 原代码此处遗漏了闭合标签的斜杠

方法2:直接通过数组键访问(适合单交易对查询场景,性能最优)

因为返回数组的外层键就是交易对符号,直接判断键是否存在后取值即可:

$coins =  $coinex->fetch_tickers();
$searchCoin = 'DOGE/USDT';
if (isset($coins[$searchCoin])) {
    $targetCoin = $coins[$searchCoin];
    print('<pre>');
    print_r($targetCoin);
    print('</pre>');
} else {
    echo '未找到对应交易对数据';
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 06:09:03