Alain: Beenden von Kontrollfluß-Ebenen

Beitrag lesen

Moin,

Was meinst Du mit "EOF"? Ein Befehl dieser Art ist mir nicht bekannt.

EOF hab ich in einem bereits geschriebenen script gesehen ganz unten, ich dachte das soll eventuell end of if bedeuten...wusste nicht dass dies nix mit perlsprache zu tun hat.Hätte aber sein können.

Falls das Skript das Ende des Quelltextes erreicht, dann wird es allerdings ebenfalls beendet.

das meinte ich mit EOF ...

"exit" an der passenden Stelle kann Dir ersparen, für die Alternative ein riesiges, unübersichtliches "if"-Konstrukt aufzubauen.

verstehe...

"return" setzt ebenfalls den Returncode, genau wie "exit". Aber es beendet nur die aktuelle Kontrollfluß-Ebene, nicht jedoch alle (wie exit). Wenn Du innerhalb einer Funktion "return" ausführen läßt, dann wird das Skript an der Stelle fortgesetzt, wo die zuvor aktive Funktion aufgerufen wurde - genauso, als hätte der Perl-Interpreter das Ende des äußersten Blocks dieser Funktion erreicht.

also ist "return;" dasselbe wie exit; nur eben für eine bestimmte zuvor aufgerufene funktion. wodurch aber das script selbst nicht komplett ausgeschaltet wird? Richtig?

Ich war auf das exit; problem gestossen,weil ich bei einer "html" Ausgabe im cgi das exit gesetzt hatte und die log datei desshalb nicht geschrieben wurde,weil das script ja beendet wurde durch diese "html" ausgabe. Im Prinzip bräuchte ein cgi also auch kein exit; wenn es sauber geschrieben wurde,aber ich frage mich trotzdem,warum bei all den free cgi's irgendwo und wenn nur am Schluss des cgis ein exit oder exit(0); stehen muss?!

Grüsse vom Alain