Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何获得多维数组的所有可能组合_Php_Arrays_Multidimensional Array_Foreach - Fatal编程技术网

Php 如何获得多维数组的所有可能组合

Php 如何获得多维数组的所有可能组合,php,arrays,multidimensional-array,foreach,Php,Arrays,Multidimensional Array,Foreach,好的,这里有一个多维数组。它由3个阵列组成,每个阵列有3个数字 $numbers = array( array("1", "2", "3"), array("4", "5", "6"), array("7", "8", "9"), ); 我想从这些数组中生成并列出所有可能的数字组合。例如,“147”(1来自第一个数组,4来自第二个数组,7来自第三个数组),“247、347、157、257、357、167、267、367等等。” 重要的是,第一个数字必须来自第一个数组,第

好的,这里有一个多维数组。它由3个阵列组成,每个阵列有3个数字

$numbers = array(
    array("1", "2", "3"),
    array("4", "5", "6"),
    array("7", "8", "9"),
);
我想从这些数组中生成并列出所有可能的数字组合。例如,“147”(1来自第一个数组,4来自第二个数组,7来自第三个数组),“247、347、157、257、357、167、267、367等等。”

重要的是,第一个数字必须来自第一个数组,第二个数字来自第二个数组,第三个数字来自第三个数组

我曾尝试使用嵌套的foreach循环遍历这些数组,但我不太明白,这让我头晕目眩。希望这是有意义的,任何帮助都将不胜感激。


<?php
$numbers = array(
    array("1", "2", "3"),
    array("4", "5", "6"),
    array("7", "8", "9"),
);

for ($i=0;$i<3;$i++) {
  for ($j=0;$j<3;$j++) {
    for ($k=0;$k<3;$k++) {
      echo $numbers[0][$i]+" "+$numbers[1][$j]+" "+$numbers[2][$k]+"\n";
    }
  }
}
?>
我以前没有用php编程,所以代码可能会让你的眼睛流血。尽管如此,该代码仍然有效并演示了该思想。


$numbers = array(
    array("1", "2", "3"),
    array("4", "5", "6"),
    array("7", "8", "9"),
);

$f_nb = $numbers['0'];
$s_nb = $numbers['1'];
$t_nb = $numbers['2'];

$final_array = array();

for($a = 0; $a<sizeof($f_nb); $a++) 
{
    for($b = 0; $b<sizeof($s_nb); $b++) 
    {
        for($c = 0; $c<sizeof($t_nb); $c++) 
        {
            $final_array[] = $f_nb["$a"] . $s_nb["$b"] . $t_nb["$c"];
        }
    }
}

print_r($final_array);
我以前没有用php编程,所以代码可能会让你的眼睛流血。尽管如此,该代码仍然有效并演示了该思想。

$code>$numbers=array(
$numbers = array(
    array("1", "2", "3"),
    array("4", "5", "6"),
    array("7", "8", "9"),
);

$f_nb = $numbers['0'];
$s_nb = $numbers['1'];
$t_nb = $numbers['2'];

$final_array = array();

for($a = 0; $a<sizeof($f_nb); $a++) 
{
    for($b = 0; $b<sizeof($s_nb); $b++) 
    {
        for($c = 0; $c<sizeof($t_nb); $c++) 
        {
            $final_array[] = $f_nb["$a"] . $s_nb["$b"] . $t_nb["$c"];
        }
    }
}

print_r($final_array);
数组(“1”、“2”、“3”), 数组(“4”、“5”、“6”), 数组(“7”、“8”、“9”), ); $f_nb=$numbers['0']; $s_nb=$numbers['1']; $t_nb=$numbers['2']; $final_array=array(); 对于($a=0;$a
$numbers=array)(
数组(“1”、“2”、“3”),
数组(“4”、“5”、“6”),
数组(“7”、“8”、“9”),
);
$f_nb=$numbers['0'];
$s_nb=$numbers['1'];
$t_nb=$numbers['2'];
$final_array=array();
对于($a=0;$a的可能dup的可能dup