PHP数组:填充一系列重复

PHP数组:填充一系列重复,php,arrays,Php,Arrays,大图:我需要处理数据,以找出哪些数据组合(包括最多4次重复)最符合标准 从一个基本数组(1,2,3)和一个$repeat_max=4变量,我想通过编程方式创建一个类似这样的数组,因为数组值是动态的。请原谅任何小的语法错误,这只是一个一般的概念。请告诉我这是不是有史以来最糟糕的主意。如何循环使用$data并创建$indiv $data = array(1,2,3); $indiv[0] => array ([0] => array([0] = 1),

大图:我需要处理数据,以找出哪些数据组合(包括最多4次重复)最符合标准

从一个基本数组(1,2,3)和一个$repeat_max=4变量,我想通过编程方式创建一个类似这样的数组,因为数组值是动态的。请原谅任何小的语法错误,这只是一个一般的概念。请告诉我这是不是有史以来最糟糕的主意。如何循环使用$data并创建$indiv

$data = array(1,2,3);

$indiv[0] => array ([0] => array([0] = 1),
                    [1] => array([0] = 1, [1] = 1),
                    [2] => array([0] = 1, [1] = 1, [2] = 1),
                    [3] => array([0] = 1, [1] = 1, [2] = 1, [3] = 1)),
$indiv[1] => array ([0] => array([0] = 2),
                    [1] => array([0] = 2, [1] = 2),
                    [2] => array([0] = 2, [1] = 2, [2] = 2),
                    [3] => array([0] = 2, [1] = 2, [2] = 2, [3] = 2)),
$indiv[2] => array ([0] => array([0] = 3),
                    [1] => array([0] = 3, [1] = 3),
                    [2] => array([0] = 3, [1] = 3, [2] = 3),
                    [3] => array([0] = 3, [1] = 3, [2] = 3, [3] = 3))
我们应该这样做:

$indiv = array();
foreach ($data as $val) {
  $tmp = array();
  for ($i = 0; $i < $repeat_max; $i++) $tmp[$i] = array_fill(0, $i + 1, $val);
  $indiv[] = $tmp;
}
Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => 1
                )

            [1] => Array
                (
                    [0] => 1
                    [1] => 1
                )

            [2] => Array
                (
                    [0] => 1
                    [1] => 1
                    [2] => 1
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [0] => 2
                )

            [1] => Array
                (
                    [0] => 2
                    [1] => 2
                )

            [2] => Array
                (
                    [0] => 2
                    [1] => 2
                    [2] => 2
                )

        )

)