Dokumentation
IPS_GetTimer
array IPS_GetTimer (int $TimerID)
Parameterliste
| TimerID | ID des Timers |
Rückgabewert
Folgende Informationen stehen als key => value Paare zur Verfügung:
| Index | Typ | Beschreibung |
|---|---|---|
| TimerID | integer | ID des Timers |
| InstanceID | integer | ID der Instanz, die den Timer registriert hat (1 bei internen Timern des Kernels) |
| Name | string | Name des Timers, wie bei der Registrierung angegeben |
| Interval | integer | Intervall in Millisekunden, 0 wenn der Timer deaktiviert ist |
| LastRun | integer | Unix-Zeitstempel der letzten Ausführung, 0 wenn der Timer noch nie ausgeführt wurde |
| NextRun | integer | Unix-Zeitstempel der nächsten geplanten Ausführung, 0 wenn keine Ausführung geplant ist |
| Running | boolean | TRUE, während der Timer ausgeführt wird |
| RunOnce | boolean | TRUE bei einem einmaligen Timer, der sich nach seiner Ausführung selbst entfernt |
Beschreibung
Die Funktion liefert Informationen über den Timer mit der ID TimerID. Existiert der Timer nicht, schlägt die Funktion mit "Timer #... does not exist" fehl.
Timer werden von Instanzen registriert, beispielsweise von PHP-Modulen mit RegisterTimer und SetTimerInterval oder als einmalige Timer mit RegisterOnceTimer. Auch die eingebauten Module nutzen Timer, z.B. "SearchExpires" für das Ende des Suchmodus. Die TimerIDs werden zur Laufzeit vergeben und sind nicht dauerhaft, einmalige Timer verschwinden nach ihrer Ausführung. Skript-Timer (IPS_SetScriptTimer) sind zyklische Ereignisse und gehören nicht zu diesen Timern.
Die nächste Ausführung wird jeweils nach dem Ende der vorherigen geplant, das Intervall zählt also ab dem Ende der letzten Ausführung.
Die IDs aller Timer liefert IPS_GetTimerList, die Informationen mehrerer Timer auf einmal liefert IPS_GetTimers.
Beispiel
print_r(IPS_GetTimer(7));
/* liefert z.B.:
Array
(
[TimerID] => 7
[InstanceID] => 12345
[Name] => Update
[Interval] => 60000
[LastRun] => 1758880000
[NextRun] => 1758880060
[Running] =>
[RunOnce] =>
)
*/