上attr字段数据这里是压缩过的,可以json格式化查看: [{"attr_list":[{"attr_id":5,"attr_name":"L"}],"num":0,"price":80,"no":"9527","pic":""}, {"attr_list":[{"attr_id":6,"attr_name":"XL"}],"num":0,"price":80,"no":"9528","pic":""}, {"attr_list":[{"attr_id":7,"attr_name":"XXL"}],"num":0,"price":80,"no":"9529","pic":""}] /** * 根据规格获取商品的库存及规格价格信息 * @param array $attr_id_list 规格id列表 eg. [1,4,9] * @return array|null eg. */ public function getAttrInfo($attr_id_list) { sort($attr_id_list); $attr_rows = json_decode($this->attr, true); if (empty($attr_rows)) { return null; } foreach ($attr_rows as $i => $attr_row) { $key = []; foreach ($attr_row['attr_list'] as $j => $attr) { $key[] = $attr['attr_id']; } sort($key); if (!array_diff($attr_id_list, $key)) { if (!$attr_rows[$i]['price']) { $attr_rows[$i]['price'] = $this->price; } return $attr_rows[$i]; } } return null; }
根据商品规格获取商品库存及规格价格信息
最新推荐文章于 2023-04-07 12:14:52 发布