FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: FHEMAN am 12 Juli 2016, 12:51:04

Titel: [gelöst] Perl Verständnisfrage: if ($MyEmptyAttrVal)
Beitrag von: FHEMAN am 12 Juli 2016, 12:51:04
Hallihallo,

gestern habe ich "Stunden" mit der Fehlersuche verbracht, da anscheinend

if (-1)

true liefert, was laut Perl Spec. doch nicht der Fall sein sollte?

Ich nutze Abfragen der Art

my $MyAttrVal = AttrVal("myDEVICE", "myAttribute", -1);

um dann später via

if ($MyAttrVal ) {}

zu überprüfen, ob das Attribut gefüllt ist, um dann damit weiterzuarbeiten. Das mache ich bei ReadingsVal genau so.

Hat jemand eine Erklärung für das Verhalten? Wird da der falsche Datentyp zurückgeliefert?
Da ich erst durch FHEM mit Perl in Berührung gekommen bin, verzeiht mir bitte die eventuelle Anfängerfrage.

Schöne Grüße
Ronny
Titel: Antw:Perl Verständnisfrage: if ($MyEmptyAttrVal) VS. if ($MyEmptyAttrVal ne -1)
Beitrag von: justme1968 am 12 Juli 2016, 13:00:00
alles außer 0, einem leeren string oder undefined ist true.

gruss
  andre
Titel: Antw:Perl Verständnisfrage: if ($MyEmptyAttrVal) VS. if ($MyEmptyAttrVal ne -1)
Beitrag von: FHEMAN am 12 Juli 2016, 13:13:02
Ich frage mich gerade, wo ich das gelesen hatte. Werde meine fhem.cfg mal intensiv durchgehen und korrigieren.

Danke dir, Andre und sorry für die Anfängerfrage!