Perl: if, else und else if: So geht die “IF” Abfrage!
Eine einfache IF-Abfrage ist mit Perl von der Syntax etwas anders als bei anderen Programmiersprachen: Während Javascript und PHP die Syntax “else if” und PHP zusätzlich auch noch “elseif” unterstützen, ist Perl hier etwas eigen: Wer die genaue Syntax nicht kennt, bekommt eine Fehlermeldung: Perl akzeptiert nur genau eine Variante für die fehlerfreie Ausführung der IF Abfrage.
Javascript IF/ELSE Syntax:
if(a == 1) { ... } else if { ... } else { ... }
Bei Javascript und auch PHP heißt die Abfrage IF und ELSE IF für die zweite Bedingung. Alle anderen Möglichkeiten werden dann mit ELSE abgefangen – anders in Perl.
PHP IF/ELSE Syntax:
if($a == 1) { ... } else if { ... } else { ... }
PHP, dessen erste Version an Perl angelehnt istn, nutzt die gleiche IF / ELSE IF Syntax wie Javascript. In PHP kann man den zweiten Part der Abfrage sogar sowohl “elseif” als auch “else if” schreiben: Zumindest, wenn man die Abfrage mit geschwungenen Klammern schreibt.
Perl IF/ELSE Syntax:
if($a == 1) { ... } elsif { ... } else { ... }
Perl erkennt stattdessen weder ELSE IF noch ELSEIF: Damit Perl-Programme einwandfrei und ohne Fehlermeldung funktionieren, muss mann die Syntax ELSIF verwenden. Beide Teile müssen zwingend zusammengeschrieben werden, das hintere “e” von ELSE fällt weg. Perl hat aber noch eine weitere Besonderheit, die es von PHP und Javascript
unterscheidet: Perl erwartet unterschiedliche Operatoren in der IF Abfrage für numerische Abfragen und Abfragen mit Strings.
Perl IF-Abfrage: Unterschied zwischen Zahlen und Springs
Während bei Zahlen wie in der Abfrage oben if(a == 1) die Werte mit einem doppelten Gleichheitszeichen verglichen werden, benötigt man eine andere Syntax, wenn man in der IF Abfrage die Werte von Strings prüfen möchte. Statt “==” nutzt Perl den Operator “eq” für “ist gleich” und “ne” für “ist nicht gleich”:
eq: is equal
und:
ne: is not equal
Die Abfrage lautet dann in unserem Beispiel etwa so:
if($a eq "wert" && $a ne "wert2") { ... }
- FHEM / Perl: So macht man eine IF-Abfrage / IF-Bedingung!
- FHEM: Probleme mit aktuellem Raspbian Jessie / Perl 5.20.2!
Der Smart Home Server FHEM hat anscheinend ein Problem mit der neuesten Raspbian Version "Jessi...
- passwort abfrage
- Benutzer Abfrage
Ich habe einen Laptop und benutze eine Festplatte für !wichtige Dinge!,aber für den täglichen Geb...
- datenschutz (46x gelesen)
- windows-beschleunigen (46x gelesen)
- windows-schneller-starten-autostart-aufraeumen (39x gelesen)
- pc-einsteigerkurs (30x gelesen)
- pc-einsteigerkurs-1-2 (9x gelesen)
Mehr Tipps zu Perl: if, else und else if: So geht ...
-
Lösung: “PERL WARNING: Possible unintended interpolation of …”
Der Fehler kommt n Perl oft vor, wenn man ein bestimmtes Sonderzeichen nicht maskiert hat - zum Beispiel das "@ Zeichen", oder aber ein Anführungszeichen...
-
Perl Cookbook
Larry Wall, der Erfinder von Perl (Practical Extraction and Reporting Language), ist eine Kultfigur, da er 1987 quasi im Alleingang eine Programmiersprache schuf, die irgendwie...
-
Perl fürs Web
Perl, die Practical Extraction and Replacement Language, ist eigentlich gar nicht als Web-Sprache entwickelt worden, sondern um besser mit Textdaten arbeiten zu können. Dass sie...
-
FHEM per HTTP-Request steuern oder Daten abfragen
Um FHEM, die Open-Source Smart-Home-Steuerung, direkt per HTTP Request zu steuern, kann man den Befehl direkt in den Browser eingeben. Oft häufiger genutzt wird das...
-
FHEM if-Abfrage – Beispiel: Schalten nach Wochentag
In unserem Artikel "Intelligente Zeitschaltuhr mit FHEM" zeigen wir bereits, wie man das Licht oder die Rolläden jeden Tag zu einer bestimmten Zeit schalten kann...
-
PHP Fehler anzeigen: Fehleranzeige aktivieren für eine oder alle Seiten!
Schnell sehen, wo der PHP Fehler liegt: Dazu schaltet man die PHP Fehleranzeige ein, um genaue Informationen zu Problem und Zeilennummer zu bekommen. Die PHP...
Perl: if, else und else if: So geht die "IF" Abfrage!