PHP 多个一维数组组合

function A($a , $currentArr, $currentIndex , $new , &$data = []){

foreach ($currentArr as $k=>$v){

$new[$currentIndex] = $v;

if (isset($a[$currentIndex +1 ])){

A($a,$a[$currentIndex + 1 ], $currentIndex + 1 , $new , $data);

}else{
$data[] = $new;
}

}

}




$arr = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
];

function getUnion($arr1, $arr2)
{
$new = [];
foreach ($arr1 as $k => $v) {
if (!empty($arr2)) {
foreach ($arr2 as $key => $value) {
$new[] = $v . $value;
}
} else {
$new = $arr1;
}
}
return $new;
}


$result = [];

$length = count($arr);

for ($i = 0; $i < $length; $i++) {
if ($i === 1) {
$result = getUnion($arr[0], $arr[1]);
}
if ($i > 1) {
$result = getUnion($result, $arr[$i]);
}
}
posted @ 2020-06-10 09:09  仁义礼智信的  阅读(453)  评论(0编辑  收藏  举报