4个数组的排列组合问题

4个数组的排列组合问题
需要是这样的学年和年级的数值已经提前固定好了,但是另外四个(学院,专业,学期,班级类型)均是独立的数组,

例如学院 $term = [‘理学院’,’工学院’];
专业:$major = [‘自动化’,’计算机’,”…”];
学期 $smse = [‘第一学期’,’第二学期’];
班级:$class = [‘文科班’,’火箭班’,’…’];

现在要按学年-》学院-》专业-》年级-》学期-》班级类型 这个顺序进行组合

我的想法是4个foreach循环

   foreach($term as $value){
        foreach($major as $val){
            foreach($smse as $v){
                foreach($class as $cls){
                    //在这里进行数据组合
                   }
               }
           }
   }

这样做的话,有点恐怖啊,有其他方法么

颠倒的玉石
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

集合《Laravel 5.8 中文文档》

crossJoin 方法交叉连接指定数组或集合的值,返回所有可能排列的笛卡尔积:
这个能满足你的需求吧

3年前 评论
颠倒的玉石 (楼主) 3年前
讨论数量: 2

看看leetcode这道题leetcode-cn.com/problems/letter-co... ,能解出来就差不多了

3年前 评论
颠倒的玉石 (楼主) 3年前
oliver-l (作者) 3年前

集合《Laravel 5.8 中文文档》

crossJoin 方法交叉连接指定数组或集合的值,返回所有可能排列的笛卡尔积:
这个能满足你的需求吧

3年前 评论
颠倒的玉石 (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!