我如何在PHP中获得不同的数组组合

时间:2013-12-27 19:53:13

标签: php arrays combinations

我有这样的数组

array1 =  ['A', 'B', 'C', 'D', 'E']
array2 =  ['1', '2', '3']
array3 =  ['a', 'b']

我希望有不同的组合来获得像这样的数组

的结果

['A@1@a', 'A@1@b', 'A@2@a', 'A@2@b' . . .. ]

逻辑

  1. 获取数组1的第一个元素
  2. 然后获取数组2的第一个元素
  3. 此时我们得到A@1然后对于数组3的所有元素,我们得到'A@1@a', 'A@1@b'
  4. 然后我们重复一遍。我用@分隔每个数组 我怎么能这样做

1 个答案:

答案 0 :(得分:4)

$totalArray = array();
foreach($array1 as $a1) {
    foreach($array2 as $a2) {
        foreach($array3 as $a3) {
            $totalArray[] = "$a1@$a2@$a3";
        }
    }
}