テンプレートエンジン?
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> </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> </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>