May 16
逆引きrhaco29: かっこいいURL(?)を使う(その3:同ファイル内の関数を呼ぶ)
この方法は
クラスを作るほどでもない。
全部1ファイルにおさめたい
などの場合に使える方法です。
<?php
require_once("./__init__.php");
Rhaco::import("generic.Urls");
Rhaco::import("generic.Flow");
Rhaco::import("abbr.F");
$pattern = array("^hoge\/?$"=>array("method"=>"hoge"));
$parser = Urls::parser($pattern);
$parser->write();
function hoge(){
$flow = new Flow();
//何か処理をする
$flow->setTemplate(F::path(Rhaco::constant("TEMPLATE_PATH"),"hoge.html"));
return $flow->parser();
}
?>
呼ばれた関数はパーサを返す必要があるので(通常はHtmlParserを返すことになります)、$flow->parse()でHtmlParserを返しています。Viewsでも同じようにできます。
HtmlParserそのものをnewして返しても良いですが、実際使う時はFlowかViewsを使うことが多いと思います。
このエントリーのはてなブックマーク (