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

使用Amadeus Flight Offer API区分去程与返程航班的问题咨询

问题解答

关于去返程标识的说明

Amadeus Flight Offer API 没有单独的字段专门标记去程/返程航班,但是往返行程的返回结果中,itineraries数组的顺序严格和你请求参数里originDestinationList的顺序一一对应:

  • 下标为0的元素固定为去程行程
  • 下标为1的元素固定为返程行程
    你给出的返回样例也符合这个规则,第一组行程就是下标0的去程,第二组是下标1的返程。

代码调整方案

你不需要遍历所有itineraries元素,只需要取下标为0的去程行程遍历即可,调整后的代码如下:

$response_body = callAmadeusAPI($endpoint,$travel_data,$access_token);
foreach($response_body->data as $offer)
{
    // 仅取下标为0的去程行程,避免输出返程
    $departureItinerary = $offer->itineraries[0];
    echo '去程总时长:' . $departureItinerary->duration . '<br>';
    // 遍历去程的所有航段
    foreach($departureItinerary->segments as $segment )
    {
        // 这里可以自行排版输出航段信息,比如起降机场、时间、航班号等
        echo '航班:' . $segment->carrierCode . $segment->number . ' ';
        echo $segment->departure->iataCode . ' ' . $segment->departure->at . ' → ';
        echo $segment->arrival->iataCode . ' ' . $segment->arrival->at . '<br>';
    }
}

额外注意事项

  • 如果你的请求支持单程/往返动态切换,可以先判断itineraries数组的长度,避免下标不存在报错
  • 如果你使用多目的地行程查询,按照请求时传入的originDestinationList顺序取对应下标的itineraries元素即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 20:15:08