Каков наилучший способ размещения функций, которые используются в нескольких слоях MVC?
Недавно мне пришлось написать некоторые статистические функции, которые используются как в представлении, так и в модели. Если я помещаю их в помощник, я застреваю при загрузке помощников в слое модели, который раздражает, кажется неправильным и полностью ломается, когда эти функции вызываются из задачи (потому что нет контекста по умолчанию). Если я помещу их в каталог lib
верхнего уровня, я застрял, делая вызовы типа Stats::normalPercentile
в представлении.
Есть ли другие варианты? Есть ли какие-либо комментарии от разработчиков Symfony о том, где следует размещать подобные функции?
Редактировать : По-видимому, нет проблем с выполнением статических вызовов в представлениях. Я сделал это исходя из того, что Symfony не писал своих помощников как классы (даже после значительного обсуждения .). В таком случае, существуют ли какие-либо соглашения для размещения таких файлов? Просто бросьте их в lib/util
?