Embperl - building dynamic websites with Perl


Meta-Commands
[ << Prev: Perl Code in HTML Dokumente einfügen ] [ Content ] [ Next: Dynamische Tabellen >> ]

Embperl unterstützt einige Meta-Commands um dem "Programmablauf" innerhalb des Embperldokuments zu steuern. Dies kann mit einem Preprozessor in C verglichen werden. Die Meta-Commands haben folgende Form:

    [$ <cmd> <arg> $]
 

if, elsif, else, endif

 

Der if Befehl hat die selben Auswirkungen wie in Perl. Er kann genutzt werden um Teile des Dokuments nur unter bestimmten Bedingungen auszugeben/auszuführen. Beispiel:

 [$ if $ENV{REQUEST_METHOD} eq 'GET' $]
    <p>Dies ist ein GET Request</p>
 [$ elsif $ENV{REQUEST_METHOD} eq 'POST' $]
    <p>Dies ist ein POST Request</p>
 [$ else $]
    <p>Dies ist weder ein GET noch ein POST Request</p>
 [$ endif $]

Dieses Beispiel gibt eine der drei Absätze in Abhänigkeit von dem Wert von $ENV{REQUEST_METHOD} aus.

 

while, endwhile

 

Der while Befehl wird dazu benutzt, um eine Schleife innerhalb des HTML Dokuments zu erzeugen. Beispiel:

 [$ while ($k, $v) = each (%ENV) $]
    [+ $k +] = [+ $v +] <BR>
 [$ endwhile $]

Das Beispiel zeigt alle Environementvariablen, jede abgeschlossen mit einem Zeilenumbruch (<BR>).

 

do, until

 

do until erzeugt ebenso eine Schleife, jedoch mit der Bedingung am Ende. Beispiel:

 [- @arr = (3, 5, 7); $i = 0 -]
 [$ do $]
    [+ $arr[ $i++ ] +]
 [$ until $i > $#arr $]
 

foreach, endforeach

 

Erzeugt eine Schleife, die über jedes Element einer Liste/Arrays iteriert. Beispiel:

 [$ foreach $v (1..10) $]
    [+ $v +]
 [$ endforeach $]
 

var <var1> <var2> ...

 

Standartmäßig ist es nicht nötig irgenwelche Variablen innerhalb einer Embperlseite zu deklarieren. Embperl kümmert sich darum nach jedem Request wieder aufzuräumen. Manchmal möchte man jedoch die zu benutzenden Variablen explizit deklarieren. Dies ist mit var möglich:

 [$ var $a @b %c $]

Hat den selben Effekt wie der Perlcode:

 use strict ; use vars qw {$a @b %c} ;
 

hidden

 

hidden ermöglicht es versteckte Formularfelder zu erzeugen und wird weiter unten im Abschnitt über Formularfelder beschrieben.


[ << Prev: Perl Code in HTML Dokumente einfügen ] [ Content ] [ Next: Dynamische Tabellen >> ]


© 1997-2023 Gerald Richter / actevy