Это хорошая практика, или это может быть, заставить пользователя использовать пространства имен в контексте структуры?Я разрабатываю фреймворк (да, я знаю, в этом нет необходимости, потому что эти потрясающие фреймворки уже созданы; поэтому нет необходимости указывать, что я изобретаю колесо без причины; это только для меня; ямне нужно было создать фреймворк, чтобы быть в согласии с самим собой;) и мне было интересно, было бы приемлемо заставить пользователя использовать что-то вроде:
$post = new Model\Post($id); // for models
$html = new Library\Html(); // for library classes
$ajax = new Helper\Ajax(); // for helpers
# ... and so on
.Мне нужно это, чтобы иметь возможность использовать функцию автозагрузки и автоматически проверять правильную папку класса (модель /, библиотека /, помощник / ... и т. Д.) По пространству имен класса.
Илия должен просто пойти с универсальным $this
, ссылающимся на класс родительского контроллера, и загрузить такие вещи, как:
$post = $this->model('Post');
$html = $this->library('Html');
$ajax = $this->helper('Ajax');
Если последнее, как я должен управлять параметрами, которые могут быть отправлены в конструктор этого класса?