Neron adlı üyeden alıntı:
mesajı görüntüle
PHP Array konusunda yardım
10
●180
- 12-06-2021, 11:14:09Üyeliği durdurulduCevap yazan ve yardımcı olmaya çalışan arkadaşlara teşekkürler.
Sorunu çözdüm.
Belki birinin işine yarayabilir diye kodları aşağı bırakıyorum:
<?php $data = array('1,4,Beyaz','1,8,Siyah','5,1,S','5,5,L','5,7,XL'); $arr = array(); foreach ( $data as $d ) { if ( strpos($d,",") !== false ) { $v = explode(",",$d); $grupID = $v[0]; $attrID = $v[1]; $name = $v[2]; $arr[] = array( 'grup' => $grupID, 'id' => $attrID, 'name' => $name ); } } $grupID = array(); foreach ( $arr as $s ) { $grupID[] = $s['grup']; } $grupID = array_count_values($grupID); $newarr = array(); foreach ( $arr as $k => $v ) { $newarr[$v['grup']][] = array( 'id' => $v['id'], 'name' => $v['name'] ); } $newarr = array_values($newarr); $final = array(); foreach ( $newarr as $k => $v ) { if ( !empty($newarr[$k+1]) ) { for ( $i=0; $i<count($newarr[$k]); $i++ ) { for ( $j=0; $j<count($newarr[$k+1]); $j++ ) { $final[] = array( 'id' => $newarr[$k+1][$j]['id'] . ',' . $newarr[$k+1][$j]['name'], 'name' => $newarr[$k][$i]['id'] . ',' . $newarr[$k][$i]['name'] ); } } } } print_r($final); ?>

