Разговаривая о Codeigniter всплыла такая вещь:
В CI не нравится вот именно такая фишка – делаем load и оно создает один объект этого класса внутри нашего контроллера.
В принципе так оно и есть, но оказывается никто не мешает создавать несколько объектов.
Допустим мы захотели создать несколько объектов нашей модели, что делать? а вот что:
...
// создаём объек модели в супер-объекте
$this->load->model('Our_model');
// создаём ещё один объект модели
$ourmodel = new Our_model;
...
И всё теперь у нас есть два объекта модели к одному обращаемся:
... $this->our_model->our_method(); ...
а к другому:
... $ourmodel->our_method(); ...
точно также можно и c родными классам Codeigniter’a.
А если нам понадобилось извлечь какие-либо данные и супер-объекта для этого используется
... $obj = & get_instance(); ...
Мораль из этой сказки я вынес такую:
Фреймворки – это хорошо, но не нужно забывать о стандартных возможностях языка.
Вот и всё.
Ну я знал это.
Естественно, если обьект создался, то класс подгрузился, а т.к. никаких ограничений на конструкторы в PHP4 нет и в помине – его можно инстанциировать.
Но… Всё равно бред получается. Если бы load загружала просто класс, а потом мы создавали из него обьекты – было бы логичнее. Да и вообще – система калечная. В кохане лучше. Но с ORM’ом там тоже нелады.
Зато заморочек с коммандной строкой нет, насчёт ORM, да согласен полностью, но с ActiveRecord без него не плохо
Понимаешь, когда в AR нет отличий между методами записи и таблицы – это хреновый AR.
Зато заморочек с коммандной строкой нет.
гм. никаких заморочек. просто удобные шорткаты для частоиспользуемых действий.
Ну ты прям как Бориска
– «Панимаишьь»
Может быть, точнее даже скорее всего, но хз почему многим и мне в том числе удобно её юзать,
есть кстати на wiki другая имплементация АR.
ну-ну..
В общем ладно.
СI, по крайней мере для меня достаточно рульный фреймворк для быстрой разработки.