$Variable(Wert) zwischen zwei Scriptaufrufen behalten

Hallo
Eine kurze Frage, da ich nach längerem Suchen nichts finde:

Wie kann ich eine $Variable im Script (hier das Registervariable-Script einer serielle Schnittstelle) anlegen die Ihren Wert auch zwischen den Scriptaufrufen beibehält?
Eine „normale“ Variable möchte ich nicht anlegen, da diese in der LOG Datei aufgeführt wird und damit die Log Datei wegen der vielen Aufrufe des Scriptes zusätzlich vergrößert.

Geht das überhaupt? Und wo müsste ich diese globale Variable anlegen?

Danke für Eure Antworten im Voraus
Lutz

Moin…

… in der DOKU unter Register Variable ist doch eigentlich beschrieben was Du suchst oder nicht?

http://www.ip-symcon.de/service/dokumentation/modulreferenz/registervariable/

Gruß,
Peter

Hallo Peter.

Das genau mache ich ja.

Aber ich muß hier etwas zwischen den Aufrufen zwischenspeichern!
Und das möchte ich nicht in einer „normalen“ Variable sondern in einer $variable (PHP) machen.
Grundsätzlich geht das ja innerhalb des Scriptes. Aber die $variable (PHP) verliert Ihren Inhalt
zwischen den Aufrufen des Scriptes.

Lutz

Nur damit ich es auch richtig verstehe…

… Du übergibst von einer Register-Variable an das HandlerSkript deinen Wert.

Von dort aus möchtest Du ein weiteres Skript aufrufen und den Inhalt der Register-Variable oder eines verarbeiteten Wertes an ein weiteres Skript übergeben?

Falls ja würde ich Dir mal IPS_RunScriptEx ans Herz legen. Hiermit kannst Du Werte aus Skript A an Skript B per Array übergeben.

Nein, ich versuche es nochmal besser zu beschreiben!

Das Handler-Script wird durch die Registervariable ja immer wieder aufgerufen (es kommen ständig seriell Daten rein).
Ich baue mir dann meine Strings zusammen.
Genau hier brauche ich einige Kontrollvariablen. Diese habe ich mit $AnzahlBytes (PHP Variable im Script) probiert. $AnzahlBytes muß aber zwischen den Aufrufen des Handler-Scripts den Wert behalten. Tut es aber nicht !

Genau hier sollte dann $AnzahlBytes global sein.
Wie kann ich das erreichen?

In andern Proogrammiersprachen muß ich es in den ersten Zeilen des Codes als Golbal bzw. Static AnzahlBytes o.ä. definieren.

Hoffe es jetzt vielleicht besser beschrieben zu haben.

Lutz

Hallo Lutz,

solche temporären Werte lege ich gern im Infobereich eines Objektes(des Scriptes) ab.
Schreiben mit:

IPS_SetInfo($_IPS['SELF'],$variable);

Auslesen mit:

$variable = IPS_GetObject($_IPS['SELF'])["ObjectInfo"];

Gruß
Attain

Warum löst ihr das nicht mit dem Buffer der RV?
Stichwort

IPS_Set/Get_Buffer

Um meine Eingangsfrage mit einer Lösung von Stele99 zu schließen:

http://www.ip-symcon.de/forum/threads/20529-Script-(Klasse)-um-dauerhaft-Variablen-bzw-Arrays-zu-speichern?p=185787#post185787

Danke
Lutz