テンプレートエンジン?

amritaの移植はちと無理かもと思ったので、シンプルなのを作ってみてます。

  • 指定した属性の値にPHP構文でロジックを記述する
    • 制御構造は、if文・for文・foreach文
    • 変数のみの場合はタグ内の要素が置換される
  • ロジックを記述する属性は指定可能
  • 本来の属性値とロジックの区切り文字も指定可能
  • ロジックを記述する属性を削除するかどうかも指定可能


一応ブラウザできちんと見えるテンプレートになるし、置換・繰り返し・選択(削除)できるので、まま使えないかなぁ。


こんな場合

<table>
 <tr id="hoge|if($hoge)" bgcolor="#9999cc">
  <td id="hoge|if($hoge2)" align="center" rowspan="2" width="126">
    <a href="/"><img src="http://static.php.net/www.php.net/images/php.gif"/></a>
  <td>&nbsp;</td>
 </tr>
 <tr id2='uni|foreach($a as $k => $v){' bgcolor="#9999cc">
  <td align="right" valign="bottom">
    <a href="/downloads.php" class="small">downloads</a>
  </td>
 </tr>
 <tr id="bobchin|$bobchin" bgcolor="#333366">
   <td colspan="2">
     <img src="http://static.php.net/www.php.net/images/spacer.gif"/>
   </td>
 </tr>
</table>

こんな風になります。

<table>
 <?php if($hoge){ ?><tr id="hoge" bgcolor="#9999cc">
  <?php if($hoge2){ ?><td id="hoge" align="center" rowspan="2" width="126">
    <a href="/"><img src="http://static.php.net/www.php.net/images/php.gif"/></a>
  </td><?php } ?>
  <td>&nbsp;</td>
 </tr><?php } ?>
 <?php foreach($a as $k => $v){ ?><tr id2='uni' bgcolor="#9999cc">
  <td align="right" valign="bottom">
    <a href="/downloads.php" class="small">downloads</a>
  </td>
 </tr><?php } ?>
 <tr id="bobchin" bgcolor="#333366"><?php print($bobchin); ?>
 </tr>