古い記事
ランダムジャンプ
新しい記事
HTML::Template のドキュメント(see "perldoc -t HTML::Template") の
SYNOPSIS の自分用の補足。ドキュメント読むの面倒なとき用。
そのままコピペして動くようにしてある。

■その1
#!/usr/bin/perl
use strict;
use warnings;
use HTML::Template;

my $title = "Hello, World!";
my $content;
if (rand(2) < 1) {
  $content = "Hello, Mimitako!";
}
my @list = ({key=>"One", num=>1}, {key=>"Sun", num=>3},
       {key=>"Go", num=>5}, {key=>"Mimitako", num=>8});

my @templete_ary = <DATA>;
#my $templete_txt = join('', <DATA>);
my $t = HTML::Template->new(arrayref => \@templete_ary,
#                           scalarref => \$templete_txt,
#                           die_on_bad_params => 0,
                           );
$t->param(title => $title);
$t->param(content => $content);
$t->param(list => \@list);
print $t->output();

__DATA__
T: <TMPL_VAR name=title>
C: <TMPL_IF name=content><TMPL_VAR
 name=content><TMPL_ELSE>mumumu</TMPL_IF>
L: <TMPL_LOOP name=list><TMPL_VAR
 name=key>=<TMPL_VAR name=num> </TMPL_LOOP>

■その2(associate)
#!/usr/bin/perl -T
use strict;
use warnings;
use HTML::Template;
use CGI;
my $q = CGI->new();
my @templete_ary = <DATA>;
my $t = HTML::Template->new(arrayref => \@templete_ary,
 associate => $q);
$t->param(time => $^T);
print $q->header, $t->output();

__DATA__
<html>
<body>
<form>
key = <TMPL_VAR name=key><input type="text" name="key"><br>
num = <TMPL_VAR name=num><input type="text" name="num"><br>
<input type="submit">
</form>
time:<TMPL_VAR name=time>
</body>
</html>