Привет, люди и привет из Швеции!
У меня действительно сложная проблема. Я постараюсь показать, что именно я имею в виду.
Я создаю CMS на основе модулей, и некоторые модули наследуются от родительского модуля. Моя проблема заключается в том, что родительские модули должны быть включены до «детей».
Я извлекаю информацию о модуле из XML-файла и сохраняю его в массиве следующим образом:
Array
(
[bloggy] => Array
(
[module_id] => blog
[module_name] => Blog
[module_desc] => Description
[module_url] => http://www.url.se
[author] => Dev Name
[author_url] => http://url.se
[version] => 1.0
[inherit] => core|twitter
[path] => /path/to/file
[dependon] => Array
(
[0] => core
[1] => twitter
)
)
Я сделал разнесение по наследству и сохранил его в "зависимость", как вы видите выше. Теперь проблема в том, как я могу отсортировать, в каком порядке включить файлы. Каждый модуль наследуется от ядра, но если в массиве зависимостей есть другой модуль, то после него должен быть включен «дочерний» модуль.
Надеюсь, вы понимаете, о чем я?
// Тобиас