Участник
Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014
Помог: 30 раз(а)
|
imedia пишет:Именно с помощью цикла for
Почему не foreach? Пробуйте:
PHP:
скопировать код в буфер обмена
<?PHP 0=>array( 'id'=>'1', 'filter_item'=>'imediasun', 'filter_page'=>'1', 'filter_type'=>'автор', ), 1=>array( 'id'=>'2', 'filter_item'=>'clasic_art_blog', 'filter_page'=>'1', 'filter_type'=>'шаблон', ), 2=>array( 'id'=>'2', 'filter_item'=>'modern_art_blog', 'filter_page'=>'1', 'filter_type'=>'шаблон', ), 4=>array( 'id'=>'2', 'filter_item'=>'modern_art', 'filter_page'=>'1', 'filter_type'=>'шаблон', ), 3=>array( 'id'=>'3', 'filter_item'=>'Коммент1', 'filter_page'=>'1', 'filter_type'=>'Комментарии', ), 5=>array( 'id'=>'3', 'filter_item'=>'Коммент2', 'filter_page'=>'1', 'filter_type'=>'Комментарии', ), 6=>array( 'id'=>'3', 'filter_item'=>'Коммент3', 'filter_page'=>'1', 'filter_type'=>'Комментарии', ), ); //Новый массив //Для тестирования существования ключей for ($i=0;$i<$count;$i++){ //Ключ массива $key = $arr[$i]['filter_type']; //С таким ключем уже есть //Передвигаем первый массив глубже $temp = $new[$key]; $new[$key][] = $temp; $test[$key] = 1; } //Добавляем новый элемент $new[$key][]=array('id'=>$arr[$i]['id'],'filter_item'=>$arr[$i]['filter_item'],'filter_page'=>$arr[$i]['filter_page']); } else { $new[$key]=array('id'=>$arr[$i]['id'],'filter_item'=>$arr[$i]['filter_item'],'filter_page'=>$arr[$i]['filter_page']); } } echo '<pre>';
|