PHP の言語設計上の特長や、 legacy を尊重した、
「オブジェクト指向」ではなく、
「オブジェクト思考」あるいは「オブジェクト嗜好」なフレームワーク。
Perl のオブジェクト指向の実装を参考にしたい。
特徴:
-
クラスを使わない。命名規約や配列や、その他 genuine な概念を駆使する。
$_CONFs,$_PARAMs,$_MESSAGEs,$_DB_*,$_SQL_*,... -
register_globals_securely On.
リクエスト変数へのグローバルアクセスをセキュアに提供。 -
テンプレートエンジンを使わない。PHP で充分。
$ less hoge.html<?function _head($_){?> <html> <head> </head> <body> foo <?o($_['var_head']);?> bar <?}?> <?function _loop($_){?> foo <?o($_['var_loop']);?> bar <?}?> <?function _tail($_){?> foo <?o($_['var_tail']);?> bar </body> </html> <?}?> <? include_once('path/to/config.php') include_once($_CONF['path']['to_controller'].'hoge.php') ?>
$ less hoge.php<? // process_any(); $_ = $_PARAMs['head']; _head($_); unset($_); foreach ($_PARAMs['loop'] as $var) { $_ = $var; _loop($_); unset($_); } $_ = $_PARAMs['tail']; _tail($_); unset($_); ?>