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

如何处理非固定结构数组并生成指定格式赛事赔率表格

处理赛事赔率数据并转换为指定表格格式

需求说明

需要遍历赛事数据数组,将其转换为包含teams、mr1、mrx、mr2字段的表格,缺失的赔率用-填充。数据规则:

  • [N]对应赛事结果:1=主队胜(对应mr1),2=平局(对应mrx),3=客队胜(对应mr2)
  • [O]为对应结果的赔率

模拟原始数据

// 模拟输入的赛事数据数组
$matchData = [
    [
        'teams' => '巴塞罗那 vs 皇马',
        'odds' => [
            ['N' => 1, 'O' => '1.85'],
            ['N' => 2, 'O' => '3.40'],
            ['N' => 3, 'O' => '4.20']
        ]
    ],
    [
        'teams' => '尤文图斯 vs 萨尔茨堡',
        'odds' => [
            ['N' => 3, 'O' => '2.10']
        ]
    ]
];

处理逻辑(PHP示例)

通过foreach双层遍历,先初始化所有赔率字段为-,再根据[N]的值匹配对应字段赋值:

$processedData = [];

foreach ($matchData as $match) {
    // 初始化行数据,缺失赔率默认填充'-'
    $row = [
        'teams' => $match['teams'],
        'mr1' => '-',
        'mrx' => '-',
        'mr2' => '-'
    ];

    // 遍历当前赛事的赔率列表,匹配赋值
    foreach ($match['odds'] as $odd) {
        match ($odd['N']) {
            1 => $row['mr1'] = $odd['O'],
            2 => $row['mrx'] = $odd['O'],
            3 => $row['mr2'] = $odd['O']
        };
    }

    $processedData[] = $row;
}

最终转换结果

teamsmr1mrxmr2
巴塞罗那 vs 皇马1.853.404.20
尤文图斯 vs 萨尔茨堡--2.10

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 19:17:10