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

PHP调用Shopify Orders API如何遍历line_items子数组显示所有商品

PHP遍历Shopify Orders API的line_items获取所有商品信息

假设你已经通过Shopify Orders API获取到订单数据集(存储在$orders变量中),只需通过嵌套循环即可遍历每个订单下的所有商品(line_items子数组),替换原代码中仅取第一个商品的逻辑。

完整代码示例

// 假设已从Shopify API获取到订单数据,存储在$orders数组中
foreach ($orders as $order) {
    // 输出订单基础信息(示例:订单编号)
    echo "订单编号: {$order['name']}\n";
    echo "---\n";
    
    // 遍历当前订单的所有商品项
    if (!empty($order['line_items'])) {
        foreach ($order['line_items'] as $item) {
            // 输出商品核心信息
            echo "商品ID: {$item['id']}\n";
            echo "商品名称: {$item['title']}\n";
            echo "商品单价: {$item['price']}\n";
            echo "购买数量: {$item['quantity']}\n";
            echo "---\n";
        }
    } else {
        echo "该订单无商品\n---\n";
    }
}

关键说明

  1. 外层循环:遍历所有订单,每次取出单个订单对象$order
  2. 内层循环:针对每个订单的line_items子数组,逐个取出商品$item,无需关心商品数量
  3. 字段对应:代码中使用的id、title、price、quantity均为Shopify Orders API返回的标准字段,可根据需求添加其他字段(如sku、variant_title等)
  4. 空值处理:通过!empty()判断订单是否有商品,避免因line_items为空导致的报错

替换原代码的要点

如果原代码是通过$order['line_items'][0]获取第一个商品,直接删掉该写法,替换为上述内层foreach循环即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 08:07:07