Ich bastle gerade ein Script, in dem ich ObjektID manuell im Script in einem Array eingebe. (z.B. array$ = array (12345, 23456, 34567)
Jetzt schreibt mir aber IPS hinter die ID automatisch einen Kommentar/Info (z.B. /[Objekt #23456 existiert nicht]/)
Jetzt bekomme ich dadurch Probleme beim Auslesen des Arrays.
Kann ich IPS das automatische hinterlegen der Kommentare abgewöhnen?
Das du Probleme bekommst ist zwar möglich, das liegt aber nicht an den Kommentaren. Die sind nämlich im Script nicht enhalten. Die werden nur im Editor ergänzt.
Vermutlich ist deine Array-Verwendung nicht korrekt ;).
was mache ich falsch?
Fehlermeldung: Warning: ‚‘ is not a valid integer value in D:\IP-Symcon_V2\scripts\27823.ips.php on line 14
<?
// hier Variablen ID´s eintragen
$VariableID = array(58363 , 12345 , 23456 );
$Anzahl = count($VariableID); // Anzahl der Werte in Array ermitteln
$cnt = 0;
while ($cnt < $Anzahl)
{
$VariableID = $VariableID[$cnt];
$Logvariable = IPS_GetName($VariableID);
echo $cnt;
echo " ";
echo $VariableID;
echo " ";
$VariableIPS = GetValueFloat($VariableID);
$Pfad = "d:/Datenlog/"; //Pfad muss vorhanden sein!!
$Monat = date("m_Y");
//Dateinamen formatieren
$Dateiarray = array($Logvariable, $Monat);
$Datei = implode ("_" , $Dateiarray);
// für EXCEL Import besser: Dezimaltrenner: "," - Komma
$VariableIPS=number_format($VariableIPS, 1, ",", "," );
//Daten in Datei ausgeben
$handle=fopen("$Pfad/$Datei.txt", "a");
fwrite($handle, date("d.m.Y")." ; ". date("H:i:s")." ; ".$VariableIPS."
");
fclose($handle);
$cnt++;
}
?>
Du vernichtest das Array mit dem ersten Wert in der Schleife.
$VariableArray = array(58363 , 12345 , 23456 );
$Anzahl = count($VariableArray); // Anzahl der Werte in Array ermitteln
$cnt = 0;
while ($cnt < $Anzahl)
{
$VariableID = $VariableArray[$cnt];
Geht!
Danke!