Psih можно не доделывать до готового, остановившись на легком и с вполне достаточной функциональностью решении...
Sergey89 слы, а зачем делать статические методы, которые возвращают инстанцированный объект, и параметры у которых такие же как у конструктора. Где это удобно?
та не, наверно чтобы делать чтото типа $object->method(Object::Method())->method() а может и нет... фиг знает
Чтобы цепочки методов записывать PHP: <?php $form = Form::create() ->addField( FormField::password('passw') ->addRule( Rule::notEmpty() ->setErrorMessage('Введите пароль') ) );
Mr.M.I.T., это достаточно быстрая штука. Я брал простой как валенок скрипт БД из PunBB и делал PHP: <?php $result = $forum->query(array('SELECT' => '*', 'FROM' => 'posts', 'LIMIT' => 300)); $forum->fetch_array($result ); И своё - надстроку над DbSimple PHP: <?php sql::from('posts')->limit(300)->get() Работает в полтора-два раза быстрее. Хотя PunBB полуает итератор (fetch_array() - даже не обёртка для mysql_fetch_array(), а фактически просто синоним), а DbSimple работает с готовым массивом (что заодно и память кушает).
Конкретно create создан для того, чтобы возвращать ссылку на объект после создания. Остальные статические методы, как правило фабричные.