bist Du weitergekommen? Ich bin kürzlich wieder über diesen Thread gestolpert und habe es bei mir mal nachvollzogen. Die Rechnung klappt, aber Du hast noch einen Schreibfehler drin.
Code: Alles auswählen
<?
$t = str_replace(",", ".", $Wetter_Temp);
$w = str_replace(",", ".", $Wetter_Wind);
if ($w >= 5) {
$wc = round(13.12 + 0.6215 * $t - 11.37 * pow($w, 0.16) + 0.3965 * $t * pow($w, 0.16), 1);
} else {
$wc = $t;
}
$Windchill = str_replace(".", ",", $wc);
?>
ChillAnz:=WindChill
Ich empfehle Dir das Makro in ein Objekt mit Namen "Windchill" vom Typ Zahl zu schreiben. Auf der Seite Allgemein der Objektdefinition gibst Du den Startwert mit 0,0 vor. Damit werden nicht nur Ganzzahlen angezeigt, sondern eine Stelle hinter dem Komma.
Mit der letzten Zeile im php-Teil: $Windchill = .... wird dann direkt der Wert in das Objekt geschrieben und steht innerhalb der Studio-Software zur Verfügung. Du kannst das Objekt Windchill dann z.B. als Balken oder Zahlenfenster auf eine Anzeige bringen.
Möchtest Du den Wert in eine Variable schreiben so MUß diese in Studio definiert sein. Das kann in einem beliebigen Objekt sein, übersichtlicher ist es aber innerhalb des Windchill-Objekts.
Definierst Du z.B. die Variable Chill als Zahl mit dem Startwert 0,0 so mußt Du im php-Teil : $V_Windchill_Chill = ..... schreiben, um der Variablen in Studio den Wert zuzuweisen.
php ist übrigens ganz pingelig was die Schreibweise angeht (groß/klein)!!
Das Makro ausführen würde ich nur, wenn sich etwas ändert, sprich bei Empfang eines neuen Wertes.
Dazu einfach im Makro des Objekts, welches die Wetterdaten empfängt,
Code: Alles auswählen
starte(Windchill)
Bin gespannt ob es nun geht.
Viel Erfolg
sanys