String in Float umwandeln!?

String in Float umwandeln!?

Hallo,

Ich habe es geschafft, die Außentemperatur mit dem WWW Reader und dem Text Parser von einer Homepage zuholen. Jetzt wollte ich diese über das Webinterface von Torro mitloggen lassen. Dazu müsste ich aber den Wert von der Float Variable in eine String Variable bekommen.

Mit dem Versuch hatte es nicht funktioniert:

$Aussentemperatur=GetValueString(„Aussentemperatur“);
SetValueFloat(„Aussentemperatur_Grafik“, $Aussentemperatur);

Ist überhaupt eine Umwandlung möglich?

Gruß Jochen

Hallo Fidi,

Wie sieht die Stringvariable genau aus, hat sie Komma, Punkt und weiteres drin?

Gruss Torro

Ich lese den string von meteo24.de aus (kommt mit . als Trennzeichen) z.B. „2.4“ als 2,4 Grad.

Die Umwandlung funktioniert bei mir so:


SetValueFloat("var_meteoalsfloat",(float)GetValueString("var_meteoausParser"));

Vielleicht klappts bei dir ja auch so ?

Aus Sicherheitsgründen könnte man noch diverse Überprüfungen mit ins Skript hängen, die abchecken, ob der Wert jetzt ein float ist, oder ob die Umwandlung fehlgeschlagen ist (z.B. wenn der Seitenbetreiber seinen Seitenaufbau ändert) - macht insbesondere dann sinn, wenn man gefahr läuft, dass die Heizung komplett aus geht, nur weil die Internetseite anders aussieht :wink:

Gruß

cAtMaX

Wert testen mit is_numeric($var), Wert umwandeln mit floatval($var).
Mit setlocale können die richtigen Trennzeichen gesetzt werden.
Tommi

Danke für die Tipps,

mit dem Code von cAtMaX hat es ohne Probleme funktioniert.

Gruß Jochen