Задать вопрос
@lp_gigant
Разрабатываю все что разрабатывается

Как из одномерого массива в многомерный?

Есть массив, который содержит в каждом элементе, элемент 'parent' в котором хранится ID родителя
Задача: пройтись по массиву и сложить все друг в друга, т.е. если parent не пустой то найти элемент с таким ключом и положить этот в массив в parents там хранятся дочерние массивы

До второго уровня я без проблем сделал а вот как сделать чтобы из такого одномерного массива все само формировалось с учетом того что уровней может быть сколько угодно я ломаю голову уже 5 дней

HELP ME

Вот массив исходный для примера
$array = array();
    $array[53194] = array(
        'title' => 'Главный этап 1 — уровнь 1',
        'id' => 53194,
        'parent' => false,
        'parents' => array()
    );

    $array[53195] = array(
        'title' => 'Дочерний этап 1',
        'id' => 53195,
        'parent' => 53194,
        'parents' => array()
    );

    $array[53196] = array(
        'title' => 'Дочерний этап 2',
        'id' => 53196,
        'parent' => 53194,
        'parents' => array()
    );

    $array[53197] = array(
        'title' => 'Дочерний этап 3',
        'id' => 53197,
        'parent' => 53194,
        'parents' => array()
    );

    $array[53198] = array(
        'title' => 'Этап 2-1',
        'id' => 53198,
        'parent' => 53196,
        'parents' => array()
    );
  • Вопрос задан
  • 115 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
https://prowebmastering.ru/rekursiya-php.html
Что то будет не получаться - напишешь.
И пример того что не получается приложи.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽