rakutoネット
お問合せ 免責事項 Q&A 掲示板 サイト管理 リンク サイトマップ
HOME > 色々なTemplateエンジン

色々なTemplateエンジン


Templateエンジンの種類

エンジン名 コメント リンク
HTML Template IT PEARに標準でついてくるTemplateエンジン。
PEAR
HTML Template Sigma PEARの拡張インストールTemplateエンジン。 PEAR
Smarty 最も有名なTemplateエンジン。
有名サイト御用達。多機能!!
Smarty : Template Engine
patTemplate 高機能Templateエンジン。
条件分岐、ブロック設定、テンプレート読み込みなど。
PHP Application Tools
HTMLテンプレート 国産Templateエンジン。
ファイルサイズが小さく気軽に使えます。
rakutoネットで使用させて頂いております。
PHPカイハツ日誌

Benchmark_Timerで速度テスト

速度テスト 左のカレンダーをTemplateエンジンを使用して表示してみました。
環境
OS:WindowsXP
Apache/1.3.29 (Win32) PHP/4.3.4

測定結果は1000回の平均です。
Templateエンジンを使用せずに行った場合:0.002096827
<?php
    require_once 'Benchmark/Timer.php';
    $timer = new Benchmark_Timer;
    $timer->start();
 
    /*  テンプレート処理全部 */
    output_template();
 
    $timer->stop();
    $profile = $timer->getProfiling();
    echo '結果:'.$profile[1]['diff'];
?>

計測結果その1

エンジン名 コメント 時間
HTML Template IT 繰り返しの処理でブロックの開始と終了を宣言しなければならず繰り返しが重複すると書き方がわかり辛い。
シンプルな構造なら構文エラーなどもつかめ易く導入しやすい。
0.01490524
HTML Template Sigma 個人的には「HTML Template IT」よりも書きやすい構造だと思う。
変数の渡し方もシンプルで導入しやすい。
0.013767205
patTemplate 今回のテストでは繰り返しの重複を行いたかったのですが、やり方が分かりませんでした。
一週間分を置き換えてそれを繰り返すことをしています。
0.019155259
Smarty plugin機能など豊富な拡張性があり大きなサイトなど複数人で作業するにはもってこいな重量級。
DreamWeaverなどのデザインソフトを利用してもSmartyのタグがはじかれることが無いそうです。
デバッグ作業を補助してくれる機能はとてもありがたい。
0.00975824
Smarty
($compile_check=false)
$compile_checkをOFFで速度アップを試みました。
運用の際はこの状態なのでこの値を評価すべきです。
$cachingを使った場合では (0.006741555)でした。
0.007707655
HTMLテンプレート これのスピードは抜群。
Templateエンジンのファイルサイズが小さいのはうれしい所です。
機能も最低限のものは揃っていてシンプルで使いやすい。
0.0047812
HTMLテンプレート(高速) これはHTMLテンプレートの速度アップ機能を使用したものです。
テンプレートファイルを解析しPHPコードに変換したファイルを生成する機能でテンプレートファイルが新しくなる毎に変換ファイルを生成。
今回のテストでは誤差程度の速度アップでしたがテンプレートファイルのサイズが大きいと目に見えるものとなります。
0.004744188

計測結果その2

エンジン名 コメント 時間
Smarty plugin機能など豊富な拡張性があり大きなサイトなど複数人で作業するにはもってこいな重量級。
DreamWeaverなどのデザインソフトを利用してもSmartyのタグがはじかれることが無いそうです。
デバッグ作業を補助してくれる機能はとてもありがたい。
0.00975824
Smarty
($compile_check=false)
$compile_checkをOFFで速度アップを試みました。
運用の際はこの状態なのでこの値を評価すべきです。
$cachingを使った場合では (0.006741555)でした。
0.007707655
HTMLテンプレート これのスピードは抜群。
Templateエンジンのファイルサイズが小さいのはうれしい所です。
機能も最低限のものは揃っていてシンプルで使いやすい。
0.0047812
HTMLテンプレート(高速) これはHTMLテンプレートの速度アップ機能を使用したものです。
テンプレートファイルを解析しPHPコードに変換したファイルを生成する機能でテンプレートファイルが新しくなる毎に変換ファイルを生成。
今回のテストでは誤差程度の速度アップでしたがテンプレートファイルのサイズが大きいと目に見えるものとなります。
0.004744188

増えたファイルの管理

ディレクトリ Templateエンジンを使用するとプログラム用のファイルとテンプレート(デザイン)用のファイルが必要となります。
せっかくコードをスッキリさせたのにファイルが多すぎて、どのファイルを修正したらよいか……。などとなりかねません。
私は左図のようにプログラムファイルをhtdocsへ、テンプレートファイルをtemplatesへ別けそれぞれ同じ名前のディレクトリ名をつけて管理しています。
この方法だとtemplatesディレクトリに外部からの読み込み不可を設定するなどが出来ます。

Templateエンジンのすすめ まとめ

今回紹介したTemplateエンジン以外にも沢山のTemplateエンジンがあります。
目的に応じたものを選んで使用してみてください。
今回紹介した中ではSmartyかHTMLテンプレートをお勧めします。

※速度テストの結果を出しましたが、それぞれのTemplateエンジンを使いこなしているわけではありませんので正しい結果ではないと思います。
しかも、各エンジン毎に得手・不得手があり公平な判断材料にならなかった部分があると思います。
※コメント部分に関しましては独断と偏見がありますことを御了承下さい。
高橋 裕志郎

<<Templateエンジンとは
Templateエンジンのすすめ HTML Template IT>>

PHPリング

@PHP.ring Home
<5 <1 Random List 1> 5>

rktSQLite

  • sourceforge.jp

広告


アマゾン検索

サーチ:
Amazon.co.jpアソシエイト

カテゴリ

  •  Templateエンジンのすすめ Templateエンジンのすすめ
  •  SQLiteをやってみよう SQLiteをやってみよう
  •  SQLite SQLコマンド一覧 SQLiteコマンド一覧
  •  SQLite 管理プログラムSQLite 管理
  •  はじめてのEclipse はじめてのEclipse
  •  PHP SQLiteのTIPS PHP SQLiteのTIPS
  •  サンプル サンプル/ダウンロード
  •  リンク リンク
  •  掲示板 掲示板

メニュー

  •  Smartyの使用
  •  Templateエンジンとは
  •  色々なTemplateエンジン
  •  HTML Template IT
  •  HTML Template Sigma
  •  Smarty
  •  patTemplate
  •  HTMLテンプレート

キーワード検索

キーワード



最近のTB

  •  2006/03/13さくらのブログに挑戦[rakutoネットブログ]
  •  2006/01/20レーザーチャートの作成方法[脳内研究所]

Summary

  •     ATOM(XML)
  •     RDF(XML)
  •     RSS0.92(XML)
  •     RSS2.0(XML)

Powered by

  •     PHP
  •     Smarty
  •     SQLite
  •     MySQL
Copyright (C) 2005 `rakuto.net' All Rights Reserved.