对接京东,仿照京东添加商品页面在本地系统补全商品数据,到商品sku时,尺码和颜色属性对应不同sku,按照京东的样子,做成了表格形式。
部分html截图
之后就得到了sku_cm_name[]和sku_ys_name[]等多个数组,传到后台之后,每个颜色数组的键key对象的value就是一一对应的,sku_cm_name[0]对应的就是sku_ys_name[0]。
注:因为京东宙斯接口传值是array('attrId'=>'属性id',value=>'属性值');所以我的页面中sku_cm_name对应的value值是用‘_’线分割的。value="属性id_属性值",到后台再去以‘_’截取对应的值。另外到后台调用京东接口添加成功后,返回的sku和本地的做对比,我是先根据attrid排序在序列化比对的两个数组是否相等,然后关联两个skuId。
代码简化
array_multisort(array_column($v['saleAttrs'],'attrId'),SORT_ASC,$v['saleAttrs']);
array_multisort(array_column($sku_v['saleAttrs'],'attrId'),SORT_ASC,$sku_v['saleAttrs']);
if( serialize($v['saleAttrs']) === serialize($sku_v['saleAttrs']) && $sku_v['outerId']){}esle{}
本人小白一个,目前这个方案解决了我的问题。
记录一下,避免以后在遇到这种问题~
来源:oschina
链接:https://my.oschina.net/u/4444994/blog/3159235