php开发商品批量生成sku组合(两种方式)

近期在开发一个电商系统,做到了商品模块。虽然增删改查在所难免,但是商品这块更多的是js的调用等效果。还有更为重要的就是商品sku的批量生成与组合了。

不同的系统有不同的需求,以下的需求就是要添加完各种规格后批量生成sku的。【推荐学习:PHP视频教程】

ced65d7ef926850b28bb015902156eb.jpg

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

效果图

ff7fb6fe2e0931795bb0e99d06adba6.jpg

页面代码这里就不说了,sku的生成方式是根据所有规格进行组合,也就是数学上的笛卡尔积,我用php写了两种方式,记录一下。

第一种,生成字符串

<?php

function Cartesian($data){
    $len = count($data);

    for ($i = 0; $i< $len-1; $i++) {
        if ($i === 0) {
            // 数组第一个值
            $result = $data[0];
        }

        $temp = [];
        // 数组第一个值和第二个值组合
        foreach ($result as $res) {
            //数组第二个值...$i+1
            foreach($data[$i+1] as $sec){
                $temp[] = $res . '-' . $sec;
            }
            $result = $temp;
        }
    }

    return $result;
}

//需要计算的数组
$data = array(
 array('白色','银色','玫瑰金'),
 array('64G','128G'),
 array('移动','电信','联通'),
 array('国行','港版')
);

//打印结果
$result = Cartesian($data);
print_r($result);
?>

登录后复制

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » php开发商品批量生成sku组合(两种方式)
温馨提示您:本站所载文章、数据仅供参考,如果有文章侵犯了您的权益,请来信告知我们删除,联系邮箱:976157886@qq.com
Copyright © 2023 自学咖网 - All rights reserved 浙ICP备2023005527号