Jens Nödler: eval()

Beitrag lesen

Hi Forumer!

Ich habe folgenden Hinweis für die Programmierung in Perl unter http://www.linux-magazin.de/ausgabe/1998/03/CGI/cgi1.html gefunden:

<zitat>
Steht die Header-Ausgabe am Anfang und der kritische Teil des Skripts inmitten eines eval-Konstrukts, kann nichts schiefgehen: Läuft das Skript auf eine die-Anweisung, springt es aus dem eval-Block heraus und hinein! in die nachfolgende if-Bedingung, denn $@ führt in diesem Fall den Wortlaut der Fehlermeldung:

use CGI qw/:standard/;
  
print header();
    
eval {
    #...
    print p("Noch geht's gut ...\n");
    #...
    die "Schwerer Fehler!";
};
    
if ($@) {
    print h1("Fehler: $@");
}

</zitat>

Ich habe wirklich noch nie gelesen, dass man alles in die eval() funktion packen sollte und es auch noch nie in fremden Scripten gesehen.

Wie seht ihr die Sache? Benutzt ihr eval() in der angegebenen Art?

mfg
jens