duanjia7607 2014-11-20 11:22
浏览 19

如何从不同阵列创建所有可能性?

Yes I know maybe the title is so similar but it's not same than the others. I think it can be done with a recursive function. But I could not do. For example I have three different arrays:

array('1')
array('a','b')
array('x', 'y', 'z')

I want to create a new array or output like this;

array(
  '1',
  '1a',
  '1b',
  '1x',
  '1y',
  '1z',
  '1ax',
  '1ay',
  '1az',
  '1bx', 
  '1by',
  '1bz'
)

And the main problem is I don't know how many arrays come out of the first array.

  • 写回答

3条回答 默认 最新

  • doupu7651 2014-11-20 11:30
    关注

    Is the order important? If it isn’t this should do the trick:

    $array1 = array('1');
    $array2 = array('a','b');
    $array3 = array('x', 'y', 'z');
    
    $result = array();
    
    foreach ($array1 as $val) {
        foreach ($array2 as $val2) {
            foreach ($array3 as $val3) {
                $result[] = $val.$val2.$val3;
            }
            $result[] = $val.$val2;
        }
        $result[] = $val;
    }
    
    print_r($result);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制