Was können wir verbessern?

Dokumentation

PHP

IP-Symcon verwendet als Skriptsprache PHP. Durch die Tatsache, dass PHP komplett integriert ist, können alle Vorteile von PHP genutzt werden. Die Ausführung der Skripte kann dabei parallel erfolgen.

PHP Versionsübersicht

IP-Symcon Version Integrierte PHP Version (x86 Thread Safe)
ab 1.0 5.1.x
ab 2.2 5.3.x
ab 2.5 5.4.x
ab 4.0 5.6.x

Zusätzlich zu den normalen PHP Funktionen sind spezielle IP-Symcon Funktionen vorhanden, über die auf IP-Symcon-spezifische Einstellungen (siehe Befehlsreferenz) oder über die in IP-Symcon eingerichteten Geräte zugegriffen werden kann (siehe Modulreferenz).

Die aus PHP bekannte "php.ini" ( php.net/manual/de/ini.php ) ist in IP-Symcon ebenfalls vorhanden. IP-Symcon konfiguriert dabei die “extension” Einträge automatisch, anhand der vorhandenen Erweiterungen, die im “IP-Symcon/ext” Ordner abgelegt wurden.

PHP Erweiterungen installieren

Um eine PHP Erweiterung installieren zu können, muss diese von der PHP Seite heruntergeladen werden. Zu beachten ist, dass die Version mit der in IP-Symcon genutzten PHP Version übereinstimmt. Desweiteren ist die Thread-Safe (TS) und die 32-Bit (x86) Variante des Kompilats zu nutzen.

Aktuell kann PHP inkl. Erweiterungen hier heruntergeladen werden: Download

Aus dem ZIP-Paket können die gewünschten Erweiterungen (ext-Ordner) in den “IP-Symcon/ext” Ordner kopiert werden. Eine PHP Erweiterung ist normalerweise an dem “php_” Prefix zu erkennen. Manche Erweiterungen benötigen evtl. noch zusätzliche "dll’s", die in den Hauptordner kopiert werden müssen. Diese Information kann dem Handbuch der jeweiligen Erweiterung entnommen werden.

IP-Symcon muss neu gestartet werden, damit die neu installierten Erweiterungen aktiv werden.

PHP konfigurieren

Mögliche Konfigurationsparameter können dem PHP Handbuch entnommen werden. Eine nützliche Einstellung ist die Verlängerung der maximalen Skriptlaufzeit, falls etwaige Skripte (z.B. ShutterControl) dies notwendig machen sollten. Bei Anpassung dieser Einstellung muss beachtet werden, dass nur eine begrenzte Anzahl von PHP Skripten in IP-Symcon parallel ausgeführt werden können. Wenn durch eine lange Skriptlaufzeit alle Slots besetzt sein sollten, werden andere Skripte in eine Warteschlage abgelegt und erst verzögert aufgerufen. "Sleep"-Anweisungen sollten deshalb immer vermieden und gegen "Timer"-Anweisungen getauscht werden.

IP-Symcon muss nach einer Änderung der "php.ini" neu gestartet werden!

Beispiel

Maximale Skriptlaufzeit auf 5 Minuten erhöhen.

[PHP]
max_execution_time=300