岩手からこんにちは ☆彡 perl とかウェブ系なブログ

はてなダイアリーからひっこしましたよ http://d.hatena.ne.jp/rosiro

Text::MicroTemplateではまったこと

Text::MicroTemplateはとても軽いテンプレートということで、使ってみたいんだけど、はまった。

http://search.cpan.org/~typester/Text-MicroTemplate-0.07/lib/Text/MicroTemplate.pm

    # output the result of expression with automatic escape
    <?= $expr ?>             (tag style)
    ?= $expr                 (per-line)

    # execute perl code (tag style)
    <? foo() ?>
    ? foo()

    # comment (tag style)
    <?# comment ?>
    ?# comment

    # loops
    <ul>
    ? for my $item (@list) {
    <li><?= $item ?></li>
    ? }
    </ul>

<?== $変数 ?> みたいに書くと自動でエスケープしてくれる。 でも<? $変数 ?>と書いて表示されなくてはまった。
<? の場合perlコードとして実行されるので表示されなかった。 で思ったんだけど<?= と書くより<?の方が短いからこっちをデフォルト(自動エスケープ)にするべきだったんじゃないかなと。