Задать вопрос
@TANK_IST

Как написать код для данной задачи?

Есть массивы:
Ключ - id папки, значение - имя папки:
Array(
 [3] => other
 [13] => MAZ
 [11] => LOL
 [9] => pack
)

Ключ - id папки, значение - id родителя папки:
Array(
 [13] => 11
 [11] => 9
)

Массив требований:
Array(11, 13)

Как написать код который составляет пути папок из массива требований?
Например:
Для папки 11 путь будет такой: pack:LOL
Для папки 13 путь будет такой: pack:LOL:MAZ
  • Вопрос задан
  • 2375 просмотров
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
$dirMapping = [
 3 => 'other'
 13 => 'MAZ'
 11 => 'LOL'
 9 => 'pack'
];

$hierarchy = [
   13 => 11
   11 => 9
];

$ids = [11, 13];
$paths = [];
foreach ($ids as $current) {
    $path = [];
    // повторяем пока мы не дойдем до последнего
    while(isset($hierarchy[$current])){
        $path[] = $dirMapping[$current];
        $current = $hierarchy[$current];
    }; 
    $path[] = $dirMapping[$current];
    $paths[] = join(':', array_reverse($path));
}


не проверял работоспособность, но суть такая. Можно придумать чуть по лучше вариант но лень.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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