Php 将二维数组展平为单独的索引数组

Php 将二维数组展平为单独的索引数组,php,arrays,loops,foreach,Php,Arrays,Loops,Foreach,我有一个数组: $total =array(); Array ( [0] => Array ( [0] => 1 [1] => 3 ) [1] => Array ( [0] => 6 [1] => 7 [2] => 8

我有一个数组:

 $total =array();

 Array ( 
    [0] =>  Array
            (
            [0] => 1
            [1] => 3
            ) 
    [1] => Array 
            (
            [0] => 6
            [1] => 7 
            [2] => 8
            ) 
    [2] => Array 
            ( 
            [0] => 9 
            [1] => 10 
            ) 
    )
我需要动态地将每个数组更改为笛卡尔函数的索引数组

下面是我需要代码如何查找函数以正确工作:

$count = cartesian(
Array(1,3),
Array(6,7,8), 
Array(9,10)
);
任何帮助都将不胜感激!我曾尝试过展平、循环、使用数组_值,仅使用数组本身,但我一直做不到

谢谢

尼克


我相信您的
$total
数组是
多维的
数组,具有
数值索引
。所以你可以这样试试

$count = cartesian($total[0], $total[1], $total[2]);

我相信您的
$total
数组是
多维的
数组,具有
数值索引
。所以你可以这样试试

$count = cartesian($total[0], $total[1], $total[2]);

您的阵列已完全符合您的要求
array(1,3)
array(0=>1,1=>3)
相同,它们都是一个数组,在
0
键处有
1
值,在
1
键处有
3
值。调试输出所显示的内容

似乎您只需要将它们作为单独的参数传递给函数。例如:

cartesian($total[0], $total[1], $total[2])
对于阵列的动态长度,请执行以下操作:

call_user_func_array('cartesian', $total)

您的阵列已完全符合您的要求
array(1,3)
array(0=>1,1=>3)
相同,它们都是一个数组,在
0
键处有
1
值,在
1
键处有
3
值。调试输出所显示的内容

似乎您只需要将它们作为单独的参数传递给函数。例如:

cartesian($total[0], $total[1], $total[2])
对于阵列的动态长度,请执行以下操作:

call_user_func_array('cartesian', $total)

很高兴提到调用用户函数数组@deceze看起来正是我需要的谢谢!我已经编辑了我的问题来显示我正在使用的代码,你能告诉我如何实现call\u user\u func\u数组吗?Thanks@deceze我整个晚上都在做这个,我读了一遍又一遍你给我的链接。我不会返回任何错误或“False”。它只是不起作用。任何帮助都将不胜感激。感谢NickWhy
调用用户函数('cartesian',数组($total))
?!它不是应该是调用用户函数($cartesian',$total)?很高兴提到调用用户函数数组@deceze看起来正是我需要的谢谢!我已经编辑了我的问题来显示我正在使用的代码,你能告诉我如何实现call\u user\u func\u数组吗?Thanks@deceze我整个晚上都在做这个,我读了一遍又一遍你给我的链接。我不会返回任何错误或“False”。它只是不起作用。任何帮助都将不胜感激。感谢NickWhy
调用用户函数('cartesian',数组($total))
?!它不是应该是
call\u user\u func('cartesian',$total)