Я разрабатываю панель администратора, которая показывает структуру каталогов определенного местоположения на сервере. У меня есть рекурсивная функция php, которая перебирает все имеющиеся файлы и папки. То, что я не могу понять, как я могу сохранить эту структуру каталогов в ассоциативном массиве php, как это:
array[foldername1][0]=file; // if the foldername1 contains a file
array[foldername1][foldername2][0]=file //if foldername1 contains another folder(foldername2) along with the file.
Правило, которому я пытаюсь следовать: папка всегда должна быть ключом, а файл всегда должен иметь индекс, подобный следующему:
array[folder1][folder2][0]=file1;
array[folder1][folder2][1]=file2;
Функция для заполнения этого ассоциативного массива должна быть универсальной, поскольку мы никогда не знаем, какой может быть структура каталогов. Я хочу json_encode этот массив обратно к моему клиенту и иметь дело с ним в JavaScript, который не является проблемой в данный момент.
Если это плохой подход, пожалуйста, дайте мне знать, может быть, есть лучший способ сделать это. Я думал об использовании плоского массива, но я думаю, что это плохой дизайн.