#title("Template-Toolkit - 基本")
* Template-Toolkit - 基本 [#x9a70fbe]
#title("Perl/テンプレート/Template-Toolkit/基本")
* Template-Toolkit (基本) [#x9a70fbe]

テンプレートファイルを読み込み、パラメータを差し替え、表示する。

 use Template;
  
 my $tt = Template->new( {} ) || die "$Template::ERROR\n";
 my $vars = { name => 'TARO' };
 $tt->process('file.tt', $vars);

↓テンプレートファイル(file.tt)
 hello, [% name %] !

*** ファイルハンドルを読み込む場合 [#lbf00fff]
 use Template;
 
 my $tt = Template->new( {} ) || die "$Template::ERROR\n";
 my $vars = { name => 'TARO' };
 $tt->process(\*DATA, $vars);
 __DATA__
 hello, [% name %] !

*** 変数を読み込む場合 [#l4abb0fa]
 use Template;
 
 my $tt = Template->new( {} ) || die "$Template::ERROR\n";
 my $vars = { name => 'TARO' };
 my $tmpl = 'hello, [% name %] !';
 $tt->process(\$tmpl, $vars);

*** 表示せず、結果を変数に入れる場合 [#iea9487a]
 use Template;
 
 my $tt = Template->new( {} ) || die "$Template::ERROR\n";
 my $vars = { name => 'TARO' };
 my $tmpl = 'hello, [% name %] !';
 my $output = '';
 $tt->process(\$tmpl, $vars, \$output

** UTF8フラグ下で利用する [#c02f8777]

 use utf8;
 use Encode;
 use Template;
 
 my $tt = Template->new( {ENCODING => 'utf8'} ) || die "$Template::ERROR\n";
 my $vars = { name => '太郎' };
 my $tmpl = 'こんにちは, [% name %] !';
 my $output = '';
 $tt->process(\$tmpl, $vars, \$output);
 $output = Encode::encode 'utf8', $output;
 print "$output\n";
http://search.cpan.org/perldoc?Template::Provider

** 参考 [#dd242f9c]
- http://search.cpan.org/perldoc?Template
- http://search.cpan.org/perldoc?Template::Manual::Config

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS