Hauptmenü

richtige Perl Syntax

Begonnen von dt2510, 21 Februar 2017, 11:18:06

Vorheriges Thema - Nächstes Thema

Thorsten Pferdekaemper

Zitat von: betateilchen am 21 Februar 2017, 14:05:23
Hab ich doch schon längst gemacht.
Ich meinte so:

sub SetFHEMMode {
  my $m = shift;
  fhem("set FHEMMode ".($m ne 'Auto') ? $m : isday("CIVIL") ? "Day" : "Night");
}

Gruß,
   Thorsten
FUIP

betateilchen

Es geht auch noch performanter... ganz ohne fhem():



sub SetFHEMMode {
  my $m = shift;
  CommandSet(undef,"FHEMMode ".($m ne 'Auto') ? $m : isday("CIVIL") ? "Day" : "Night");
}



und selbst die Zuweisung zu $m könnte man noch weglassen, wenn man mit $_ arbeitet.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dt2510

#17
Also meine komplette 99_myUtils.pm passt (noch) auf 2 Bildschirmseiten. Soo kurz muss es dann nicht sein. Ich will schließlich in 1-2 Jahren noch wissen, was ich da wieso gemacht habe :)

Aber fehlt da nicht das ($) bei der Funktion ? Also
sub SetFHEMMode($) {...
Oder kann ich das mit "shift" weglassen ?

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Thorsten Pferdekaemper

Zitat von: dt2510 am 21 Februar 2017, 14:12:32Oder kann ich das mit "shift" weglassen ?
Ich würde mal sagen: Ja, aber ohne shift auch.
SCNR
FUIP