我已经在 SO 上被嘲笑为此类问题推广可变参数方法,但我认为展示聪明的 php 开发人员为编码人员提供的工作是很重要的。
(splat运算符)告诉我们即将到来的多维(具有潜在可变数量的子数组)数组...
。然后该函数同步迭代每个单独的子数组。array_map()
在下面的代码中,我注释掉了一个静态命名参数的方法$v1
,$v2
,$v3
由 使用array_map()
。这将适用于 OP 的情况。
注释后的代码行是一种动态访问值而无需进行任何变量命名的方法。对于多维数组的结构改变其大小/形状的任何情况,这也将非常灵活。
PHP手册参考:
单线(需要 PHP5.6+):(带有附加示例/注意事项的演示)
$m_array=[[5, 4, 10], [11, 13, 15], [32, 14, 15]];
//$new=array_map(function($v1,$v2,$v3){return [$v1,$v2,$v3];},...$m_array);
$new=array_map(function(){return func_get_args();},...$m_array);
var_export($new);
输出:
array (
0 =>
array (
0 => 5,
1 => 11,
2 => 32,
),
1 =>
array (
0 => 4,
1 => 13,
2 => 14,
),
2 =>
array (
0 => 10,
1 => 15,
2 => 15,
),
)