Kennen Sie nicht eine Methode, um den folgenden Code wie PHP auszuführen?Wie kann ich Inline-Perl-Code in HTML, wie PHP?
<html>
<?perl
print('test');
?>
</html>
Kennen Sie nicht eine Methode, um den folgenden Code wie PHP auszuführen?Wie kann ich Inline-Perl-Code in HTML, wie PHP?
<html>
<?perl
print('test');
?>
</html>
mit HTML::Mason:
<%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 Config:
PerlModule HTML::Mason::ApacheHandler
<Location /usr/local/apache/htdocs/mason>
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
</Location>
Die Syntax ist ein wenig anders, aber das ist der von HTML::Mason verbreiteten Ansatz.
Persönlich bevorzuge ich ein Templating-System, das mehr Trennung von Code und Präsentation fördert. Template Toolkit tut dies, während Flexibilität erlaubt, fast alles zu tun, was Sie jemals tun möchten.
Es gibt auch EmbPerl, obwohl es nicht zu weit verbreitet ist.
Während Sie können Perl einbetten direkt in eine Template Toolkit Datei:
[% 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>
Ein besserer Weg ist es, ein Plugin zu verwenden:
das Hauptprodukt[% USE date %]
<html>
<body>
Today is [% date.format(date.now, format = '%d-%b-%Y') %]
</body></html>
Bei meinem letzten Job wir verwenden Mason arbeiteten UND Vorlagen-Toolkit Finde das heraus. – friedo