Aufruf einer Subroutine zum berechnen von Ergebnissen
# Der Aufruf der Subroutine
&rechner(349,188);
Die Subroutine
sub rechner {
$ergebnis = $_[0] + $_[1];
print "$ergebnis";
}
Wie funktioniert's?
Nun die Werte (Argumente), hier 349,188 werden im Array @_ abgelegt und können dann in der Subroutine
abgefragt werden in der Reihenfolge $_[0] und $_[1]
Immer beachten! Perl fängt bei 0 an zu zählen!
Natürlich können in dem Aufruf &rechner(349,188); noch viel mehr Daten übergeben werden.
# Der Aufruf der Subroutine
&rechner(349,188,600,85,7433,9814);
Die Subroutine
Will ich nun nur die Zahlen 188,85,9814 berechnen sieht das so aus:
sub rechner {
$ergebnis = $_[1] + $_[3] + $_[5];
print "$ergebnis";
}
Fehlermeldungen ausgeben:
Hiermit kann man Fehlermeldungen an eine Subroutine übergeben und dadurch eine Error 500 Meldung in eine aussagekräftige
Fehlermeldung umwandeln.
open(DATEI, "benutzer.dat") or &fehlerausgabe("Die Datei benutzer.dat kann nicht geöffnet werden");
@benutzer = <DATEI>;
close(DATEI);
Die Subroutine zur Fehlerausgabe:
#########################################################################
# Fehlerausgaberoutine
sub fehlerausgabe {
# Variable Fehler wird dem Standardarray @_ zugewiesen
($fehler) = @_;
# Print qq~ leitet ganz normale HTML Ausgabe ein
print qq~
<font face="Verdana, Arial" size="2" color="#ff0000"><b>FEHLER!!!</b><br>
$fehler
</font>
~;
}
# Ende der Subroutine
#########################################################################
Selbstverständlich kann man auch den Text
Die Datei benutzer.dat kann nicht geöffnet werden
als Variable schreiben und so die Fehlermeldungen an einer Stelle verwalten.
$Fehler_1 = "Die Datei benutzer.dat kann nicht geöffnet werden";
open(DATEI, "benutzer.dat") or &fehlerausgabe("$Fehler_1");
@benutzer = <DATEI>;
close(DATEI);
|