2009-08-30
■[php][覚書] htmltemplate.incについて
もともとはWikiの方に情報をアップしていたのですが、特段更新も無さそうなのでブログのほうに転記しておきます。基本的な使い方は、「PHPテンプレートエンジン HtmlTemplate for PHP:Note - ホコホコ hoko-hoko」あたりが詳しいかと思います。
- 元ネタ
- no title
大まかな感想
メリット
- 単一ファイルのみで完結しているので設置が楽
- 単一ファイルのみなので、なにか修正をする場合でも楽
デメリット
- たぶん開発終了
- マイナー
- 低機能(smartyなどとは比べてはいけない)
開発者
鮎川 寛さん。
- PHP開発日誌(閉鎖)
- メモのために設置しているwiki(閉鎖)
- Fedora Core2でデスクトップLinux(閉鎖)
see also. 鮎川 寛 の編集 - PukiWiki-official
最新版ダウンロード
ライセンス
- sourceforgeではBSDライセンス
- プログラム中ではartisticライセンス
- なぜか手持ちはGNUライセンス
ドキュメント一覧
以下のドキュメント類は、htmltemplate.incの開発者?のページに公開されていたもののようです。既にページ自体はなくなっているので、WebArchiveよりサルベージしています。
- HTMLテンプレート クイックスタート
- HTMLテンプレート クイックスタート2
- HTMLテンプレートサンプルプログラム
- ファイル書き出しによる高速化
- ドキュメントビルダー
- TemplateComponentクラス
- HTMLテンプレート用秀丸マクロ
- HTMLテンプレート開発履歴
関連ページ
- htmltemplate??勖イ腓堺?? :: ???????????壔??茵?ず - ????若?吟?弱??臂í?帥?違????帥????ŝ??UP?????障????????鐚?
- PHPテンプレートエンジン HtmlTemplate for PHP:Note - ホコホコ hoko-hoko
- PHPで作るアクセス制御付きWEB写真公開ページ | HTML template for PHP (HTMLテンプレート ライブラリー)
テンプレートモジュール
基本的な追加方法
see also. PHP::HtmlTemplateに else を追加 - peko3の日記
<? htmltemplateに、追加したいユーザ定義タグクラスのインスタンスを登録する class StandardParser extends TemplateParser{ function StandardParser(){ $this->add(new '''追加するクラス名()'''); } }
elseタグの追加
<? class tag_else extends DataTag{ var $matchregexp='/<!--\{else\}-->/i'; var $fromstring="<!--{else}-->"; var $tostring="<?php } else { ?>"; }
switchタグの追加
see also. htmltemplate??勖イ腓堺?? :: ???????????壔??茵?ず - ????若?吟?弱??臂í?帥?違????帥????ŝ??UP?????障????????鐚?
<? /* <!--{switch hoge:val}-->〜<!--{/switch}--> * hogeがvalに等しい場合に、タグの間の〜部分を表示する。 */ class tag_switch extends DataTag{ var $matchregexp='/<!--\{switch ([^\}:]+):([^\}:]+)\}-->/i'; var $fromstring="<!--{switch %1\$s:%2\$s}-->"; var $tostring="<?php if(\$val%1\$s=='%3\$s'){ ?>"; var $closestring="<!--{/switch}-->"; } /* {switch hoge:val:〜} * hogeがvalに等しい場合に、タグ内の〜部分を表示する。(単タグ) */ class tag_switch_single extends DataTag{ var $matchregexp='/\{switch ([^\}:]+):([^\}:]+):([^\}:]+)\}/i'; var $fromstring="{switch %1\$s:%2\$s:%3\$s}"; var $tostring="<?php if(\$val%1\$s=='%3\$s'){ @print '%4\$s'; } ?>"; }
<form> <select name=foo> <option value="1" <!--{switch foo:1}-->selected<!--{/switch}--> > <option value="2" <!--{switch foo:2}-->selected<!--{/switch}--> > <option value="3" <!--{switch foo:3}-->selected<!--{/switch}--> > </select> </form> <form> <select name=foo> <option value="1" {switch foo:1:selected} > <option value="2" {switch foo:2:selected} > <option value="3" {switch foo:3:selected} > </select> </form>
foreachタグの追加
see also. htmltemplate??勖イ腓堺?? :: ???????????壔??茵?ず - ????若?吟?弱??臂í?帥?違????帥????ŝ??UP?????障????????鐚?
<? class tag_foreach extends ArrayTag{ var $matchregexp='/<!--\{foreach ([^\}]+)\}-->/i'; var $fromstring="<!--{foreach %s}-->"; var $tostring="<?php foreach(\$val%1\$s as \$cnt[\"%2\$s\"] => \$value){ ?>"; var $closestring="<!--{/foreach}-->"; var $regardasarray=TRUE; } //<!--{foreach hoge}-->で囲われている時のみ有効です class tag_key extends DataTag{ var $matchregexp='/\{key ([^\}]+)\}/i'; var $fromstring="{key %s}"; var $tostring="<?php @print nl2br(\$cnt[\"%2\$s\"]); ?>\n"; }
トラックバック - http://d.hatena.ne.jp/atyks/20090830/1251641112
リンク元
- 47 http://d.hatena.ne.jp/fbis/20091218/1261134014
- 36 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4GGLL_jaJP307JP307&q=ipod 動画 連続再生
- 20 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&hs=gxb&q=htaccess+書き方+Files&btnG=検索&lr=
- 20 http://www.google.co.jp/url?sa=t&rct=j&q=htmltemplate.inc&source=web&cd=2&ved=0CCMQFjAB&url=http://d.hatena.ne.jp/atyks/20090830/1251641112&ei=BYmETs_bKMLQmAX82cXuDw&usg=AFQjCNG7t2PaVWxHuFsx_FEWzkZpiPn-pw&sig2=_qLMZYSMSixy3Op8Ub8SAg&cad=rjt
- 15 http://www.google.co.jp/search?hl=ja&lr=lang_ja&client=firefox-a&rls=org.mozilla:ja:official&q=GTD+手帳&revid=1743680268&ei=B36cSrTqLoSAMoW8_boM&sa=X&oi=revisions_inline&resnum=0&ct=broad-revision&cd=5
- 13 http://www.google.co.jp/search?q=htmltemplate.inc&ie=utf-8&oe=utf-8&aq=t&hl=ja&client=firefox-a&rlz=1R1GGGL_ja
- 13 http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=ipod+プレイリスト+ランダム&num=50
- 12 http://www.google.co.jp/search?q=htmltemplate.inc&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 11 http://search.yahoo.co.jp/search?fr=slv1-tbtop&p=htmltemplate php&ei=UTF-8
- 9 http://www.google.co.jp/search?hl=ja&source=hp&q=gtd+手帳&lr=&aq=4&oq=gtd
