$test = [
[
[
'id' => 15,
'name' => '红色',
],
[
'id' => 16,
'name' => '蓝色',
],
[
'id' => 19,
'name' => '蓝色',
],
],
[
[
'id' => '17',
'name' => 'L'
],
[
'id' => '18',
'name' => 'M'
],
[
'id' => '20',
'name' => 'M'
],
]
];
想拿第一个元素的id和后面元素的id拼接成如下
^ array:9 [▼
0 => "15-17"
1 => "15-18"
2 => "15-20"
3 => "16-17"
4 => "16-18"
5 => "16-20"
6 => "19-17"
7 => "19-18"
8 => "19-20"
]
代码如下:
$arr = [];//存放数组
for($i=0;$i<count($test);$i++){
if($i == 0){//第一个元素,直接存入数组
foreach($test[$i] as $v){
$arr[] = $v['id'];
}
}else{
$arrx = [];//存放新组合
foreach($arr as $v){
foreach($test[$i] as $tv){
$arrx[] = $v . '-' . $tv['id'];
}
}
$arr = $arrx;//替换成最新的
}
}
print_r($arr);die;
版权声明:本文为qq_40649432原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。