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)
?