@denism300

Как пересобрать массив php?

Подскажите, как привести массив
array(8) {
  [0]=>
  array(3) {
    ["category_id"]=>
    string(1) "4"
    ["category_name"]=>
    string(9) "Headpiece"
    ["category_parent_id"]=>
    string(1) "0"
  }
  [1]=>
  array(3) {
    ["category_id"]=>
    string(1) "9"
    ["category_name"]=>
    string(4) "Lady"
    ["category_parent_id"]=>
    string(1) "7"
  }
  [2]=>
  array(3) {
    ["category_id"]=>
    string(1) "8"
    ["category_name"]=>
    string(6) "Mister"
    ["category_parent_id"]=>
    string(1) "7"
  }
  [3]=>
  array(3) {
    ["category_id"]=>
    string(1) "3"
    ["category_name"]=>
    string(10) "Pagination"
    ["category_parent_id"]=>
    string(1) "0"
  }
  [4]=>
  array(3) {
    ["category_id"]=>
    string(2) "12"
    ["category_name"]=>
    string(18) "Product attributes"
    ["category_parent_id"]=>
    string(1) "0"
  }
  [5]=>
  array(3) {
    ["category_id"]=>
    string(1) "2"
    ["category_name"]=>
    string(15) "Product pattern"
    ["category_parent_id"]=>
    string(1) "0"
  }
  [6]=>
  array(3) {
    ["category_id"]=>
    string(2) "11"
    ["category_name"]=>
    string(16) "Product variants"
    ["category_parent_id"]=>
    string(1) "0"
  }
  [7]=>
  array(3) {
    ["category_id"]=>
    string(1) "7"
    ["category_name"]=>
    string(4) "Wear"
    ["category_parent_id"]=>
    string(1) "0"
  }
}


к виду:
array(8) {
  [0]=>
  array(5) {
    [0]=>
    array(3) {
      ["category_id"]=>
      string(1) "4"
      ["category_name"]=>
      string(9) "Headpiece"
      ["category_parent_id"]=>
      string(1) "0"
    }
    [1]=>
    array(3) {
      ["category_id"]=>
      string(1) "3"
      ["category_name"]=>
      string(10) "Pagination"
      ["category_parent_id"]=>
      string(1) "0"
    }
    [2]=>
    array(3) {
      ["category_id"]=>
      string(2) "12"
      ["category_name"]=>
      string(18) "Product attributes"
      ["category_parent_id"]=>
      string(1) "0"
    }
    [3]=>
    array(3) {
      ["category_id"]=>
      string(1) "2"
      ["category_name"]=>
      string(15) "Product pattern"
      ["category_parent_id"]=>
      string(1) "0"
    }
    [4]=>
    array(3) {
      ["category_id"]=>
      string(2) "11"
      ["category_name"]=>
      string(16) "Product variants"
      ["category_parent_id"]=>
      string(1) "0"
    }
    [5]=>
    array(3) {
      ["category_id"]=>
      string(1) "7"
      ["category_name"]=>
      string(4) "Wear"
      ["category_parent_id"]=>
      string(1) "0"
    }
  }
  [7]=>
  array(2) {
    [0]=>
    array(3) {
      ["category_id"]=>
      string(1) "9"
      ["category_name"]=>
      string(4) "Lady"
      ["category_parent_id"]=>
      string(1) "7"
    }
    [1]=>
    array(3) {
      ["category_id"]=>
      string(1) "8"
    ["category_name"]=>
      string(6) "Mister"
      ["category_parent_id"]=>
      string(1) "7"
    }
  }
}

т.е., чтобы ключами являлись значения category_parent_id
  • Вопрос задан
  • 371 просмотр
Решения вопроса 1
@denism300 Автор вопроса
$newArr = array();
foreach ($oldArray as $cat) {
    $newArr[$cat['category_parent_id']][] = $cat;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы