nelolka
@nelolka

Как двумерный массив сделать древовидным?

Есть вот такой двумерный массив:
[
["1 сезон", "1 серия", "Лостфилм", "cyx793so9kodfhdwiktl0r6b/212164"],
["1 сезон", "2 серия", "Kinogo", "cyx793so9kodfhdwiktl0r6b/252865"],
["1 сезон", "2 серия", "Амедиа", "cyx793so9kodfhdwiktl0r6b/252865"],
["1 сезон", "3 серия", "Лостфилм", "cyx793so9kodfhdwiktl0r6b/264972"],
["2 сезон", "1 серия", "Лостфилм", "cyx793so9kodfhdwiktl0r6b/212164"],
["2 сезон", "2 серия", "Kinogo", "cyx793so9kodfhdwiktl0r6b/252865"],
["3 сезон", "1 серия", "Kinogo", "cyx793so9kodfhdwiktl0r6b/264972"]
]

Нужно создать дерево зависимостей для удобного обращения и получения информации. Должно быть несколько выпадающих списков, пользователь выбирает в первом списке сезон, далее — серию и версию.
Главное — превратить этот массив в древовидный, где в каждом сезоне несколько серий, а у каждой серии (возможно) несколько версий. Последний элемент массива — ссылка на серию, в выборе не участвует.
Третий день голову ломаю, как правильнее сделать.
UPD: Нужно написать скрипт, который будет делать это автоматически со входным массивом.
  • Вопрос задан
  • 141 просмотр
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
{
  "1 сезон": {
    "1 серия": {
      "Лостфилм": "cyx793so9kodfhdwiktl0r6b/212164"
    },
    "2 серия": {
      "Kinogo": "cyx793so9kodfhdwiktl0r6b/252865",
      "Амедиа": "cyx793so9kodfhdwiktl0r6b/252865"
    },
    "3 серия": {
      "Лостфилм": "cyx793so9kodfhdwiktl0r6b/264972"
    }
  },
  "2 сезон": {
    "1 серия": {
      "Лостфилм": "cyx793so9kodfhdwiktl0r6b/212164"
    },
    "2 серия": {
      "Kinogo": "cyx793so9kodfhdwiktl0r6b/252865"
    }
  },
  "3 сезон": {
    "1 серия": {
      "Kinogo": "cyx793so9kodfhdwiktl0r6b/264972"
    }
  }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы