PHP中如何构建符合API要求的嵌套关联数组结构
正确构建API所需的数组结构
你的代码问题在于,把单个商品的描述和数量打包成了一个关联数组再推入目标数组,而API要求的是每个key-value对都是独立的子数组元素。
以下是两种符合要求的实现方式:
方式一:使用foreach遍历(推荐)
$metaDataList = []; foreach ($precontractData->items as $index => $item) { // 添加商品描述条目 $metaDataList[] = [ "key" => "item_description{$index}", "value" => $item->name ]; // 添加商品数量条目 $metaDataList[] = [ "key" => "item_quantity{$index}", "value" => intval($item->cuantity) ]; }
方式二:使用for循环
$metaDataList = []; $itemTotal = count($precontractData->items); for ($i = 0; $i < $itemTotal; $i++) { $currentItem = $precontractData->items[$i]; // 插入描述子数组 $metaDataList[] = [ "key" => "item_description{$i}", "value" => $currentItem->name ]; // 插入数量子数组 $metaDataList[] = [ "key" => "item_quantity{$i}", "value" => intval($currentItem->cuantity) ]; }
说明
两种方式都是为每个商品的描述和数量分别创建独立的["key" => "...", "value" => "..."]结构,再逐个追加到$metaDataList中,最终生成的数组完全符合API要求的格式。
内容的提问来源于stack exchange,提问作者scorpions77
相关产品推荐
相关产品推荐

