#php-di
#php-di
Вопрос:
Я планирую иметь много файлов определений (например, файлов конфигурации) в отдельных каталогах и многоуровневых подкаталогах. Предположим, что эти файлы будут содержать, так сказать, много сложных ситуаций определения.
Итак, я хотел бы спросить: имеет ли КАКОЕ-ЛИБО значение, в каком порядке файлы определений загружаются в контейнер?
Примечание: определения, найденные в файлах конфигурации, соответствующих определенной среде приложения (например, ‘prod’, ‘dev’ и т. Д.), Всегда будут переопределять «обычные» определения. Итак, это не должно иметь значения для возможного ответа.
Спасибо.
Ответ №1:
Да, порядок имеет значение, поскольку это составляет основу для «модульной» системы в PHP-DI.
См http://php-di.org/doc/definition-overriding.html чтобы понять, как определения могут расширять и переопределять друг друга.
Комментарии:
1. Привет, Матье, и спасибо. Я снова прочитал ваш ответ и ссылку. Как-то теперь я могу спросить лучше, если позволите ?… Предположим, что ситуация с объектами никогда не возникнет в моем коде, и будет интересна только ситуация с массивами . Что произойдет, если я сначала загружу страницу конфигурации .php, содержащую только второе определение (с
DIadd(...)
), и только после этого я загружу другую страницу, содержащую первый фрагмент кода?2. Имеет ли значение порядок загрузки страниц в контейнер? И, в отличие от предыдущего комментария: что произойдет, если страница с
string({myvar})
ссылкой на нее будет загружена перед страницей, содержащей определениеmyvar
в ней? Тогда имеет ли значение порядок загрузки? Спасибо.