PHPのような次のコードを実行する方法が分かりませんか?PHPのようにhtmlでインラインPerlコードを挿入するにはどうしたらいいですか?
HTML::Masonを使用して<html>
<?perl
print('test');
?>
</html>
PHPのような次のコードを実行する方法が分かりませんか?PHPのようにhtmlでインラインPerlコードを挿入するにはどうしたらいいですか?
HTML::Masonを使用して<html>
<?perl
print('test');
?>
</html>
:
<%perl>
use Date::Calc;
my @today = Date::Calc->Today();
my $str = "$today[0]-$today[1]-$today[2]";
</%perl>
<html>
<body>
Today is <%$str %>
</body></html>
Apacheの設定:
PerlModule HTML::Mason::ApacheHandler
<Location /usr/local/apache/htdocs/mason>
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
</Location>
構文は少し異なっているが、それはHTML::Masonで使用されるアプローチです。
個人的には、私はコードとプレゼンテーションの分離を促進するテンプレートシステムを好みます。 Template Toolkitはこれを実行しますが、今までやりたかったことを柔軟に実行できます。
あまりにも広く使われていませんが、EmbPerlもあります。
あなたはTemplate Toolkitファイルに直接Perlを埋め込むことができますが:より良い方法はPluginを使用することです
[% PERL %]
use Date::Calc;
my @today = Date::Calc->Today();
my $str = "$today[0]-$today[1]-$today[2]";
[% END %]
<html>
<body>
Today is [% $str %]
</body></html>
:
[% USE date %]
<html>
<body>
Today is [% date.format(date.now, format = '%d-%b-%Y') %]
</body></html>
私の最後の仕事で私たちは使用済みのメイソンに取り組んだ主要な製品およびテンプレートツールキット。それを描く。 – friedo