Download homeputer - Contronics Automationssysteme
Transcript
Wichtige Hinweise und Tips zur Einbindung von PHP-Scripts
Die Benutzung von PHP-Scripts bietet eine den Zugriff auf die umfangreichen und mächtigen Funktionen von
PHP.
Grundsätzlich sind PHP-Scripts aber in der Ausführung langsamer als normale Makroanweisungen, da
Makroanweisungen in optimierten Ausführungscode übersetzt werden, PHP-Scripts aber bei jeder Ausführung
neu übersetzt werden.
Weiterhin bietet die Makrosprache spezielle Funktionen für den Anwendungszweck der Gebäudeautomation
und für die Visualisierungsdarstellung, die in PHP nicht zur Verfügung stehen.
Aus Performancegründen ist es also sinnvoll vorzugsweise die Makrosprache zu benutzen. PHP sollte für
spezielle Funktionen eingesetzt werden, die damit besser oder schneller zu realisieren sind oder in der
Makrosprache nicht zur Verfügung stehen.
So eignet sich PHP z.B. gut für komplexerer Rechenoperationen oder String-Bearbeitung.
PHP-Scripts sollten möglichst nicht in permanent aktivierten Objekten verwendet werden. Wenn sich das
nicht vermeiden lässt, sollte die Ausführung nicht öfter als 1x in der Sekunde erfolgen, ansonsten kann es je
nach verwendetem PC und freien Prozessor-Ressourcen zu Performance-Problemen kommen (siehe
Systemleistung im Windows-Task-Manager).
Wenn ein PHP-Script Fehler enthält, wird die Fehlermeldung in der untersten Zeile des Ausführungsfensters
angezeigt. Der Platz reicht aber meistens nicht aus um die komplette Fehlermeldung zu sehen. Wenn Fehler
in einem PHP-Script auftreten, wird statt der Ausgabe eine Fehlermeldung in die Variable SCRIPTOUTPUT
des jeweiligen Objektsgeschrieben. Um die komplette Meldung zu sehen, können Sie in der
Entwicklungsphase den Inhalt der Variablen SCRIPTOUTPUT des jeweiligen Objekts, in ein Anzeigefeld
(Objekt vom Typ Zeichen) ausgeben. Für dieses Anzeigefeld müssen mehrere Zeilen definiert werden, so
dass die komplette Fehlermeldung zu sehen ist.
<?
echo das ist ein absichtlicher Fehler
?>
Anzeige2:=Scriptoutput
Beachten Sie, dass Anzeige2 in entsprechender Grösse in einer selbstdefinierten Ansicht plaziert werden
muss und mit entsprechender Zeilenbreite und Anzahl defniert sein muss. Sie sehen dann die komplette vom
PHP-Interpreter erzeugte Fehlermeldung.
Eine andere Möglichkeit mehr von der Fehlermeldung zu sehen, als in der Statuszeile angezeigt wird, ist sich
den Inhalt der Variablen SCRIPTOUTPUT im Debug-Modus anzeigen zu lassen.
Bei den ersten PHP-Scripts wird es meistens erforderlich sein eines dieser Verfahren zu verwenden um
Anfangsfehler zu beseitigen.
Beachten Sie dabei Folgendes:
Die in der Fehlermeldung angezeigte Zeilennummer ist die Zeilennummer im PHP-Script nicht im Makro!!
Weiterhin ist zu beachten, dass am Beginn eines PHP-Scripts automatisch Zeilen eingefügt werden, und
zwar so viele, wie Objekte und Variablen des Projekts in dem Script verwendet werden.
Beispiel, die Zeile xx:=Fehler ist falsch:
Schaltsteckdose einschalten
Stehlame einschalten
<?
if ($AutoModus==1)
{$VLicht="an";}
else
{$VLicht="aus";}
xx:=Fehler
?>
Anzeige:=Scriptoutput
Die Fehlermeldung sieht ungefähr folgendermassen aus:
Parse error: parse error, unexpected ':' in C:\Programme..\ - on line 7
Angezeigt wird also ein Fehler in Zeile 7. Es werden zwei Objekte verwendet (AutoModus und VLicht), also
Page 136