time_nanosleep
(PHP 5, PHP 7, PHP 8)
time_nanosleep — Verzögert die Ausführung um die gegebene Anzahl Sekunden und Nanosekunden
Beschreibung
$seconds
, int $nanoseconds
): array|bool
Verzögert die Ausführung um die angegebene Anzahl Sekunden
(seconds
) und Nanosekunden
(nanoseconds
).
Parameter-Liste
-
seconds
-
Muss eine nichtnegative Ganzzahl sein.
-
nanoseconds
-
Muss eine nichtnegative Ganzzahl kleiner eine Milliarde sein.
Hinweis: Unter Windows kann das System abhängig von der Hardware länger anhalten als die angegebene Anzahl von Nanosekunden.
Rückgabewerte
Gibt bei Erfolg true
zurück. Bei einem Fehler wird false
zurückgegeben.
Wenn die Verzögerung durch ein Signal unterbrochen wurde, wird ein assoziatives Array mit den folgenden Werten zurückgegeben:
-
seconds
- die Anzahl verbleibender Sekunden -
nanoseconds
- die Anzahl verbleibender Nanosekunden
Beispiele
Beispiel #1 time_nanosleep()-Beispiel
<?php
// Vorsicht! Verhält sich nicht wie erwartet, wenn ein Array
// zurückgegeben wird
if (time_nanosleep(0, 500000000)) {
echo "Verzögerung um eine halbe Sekunde.\n";
}
// Dies ist besser:
if (time_nanosleep(0, 500000000) === true) {
echo "Verzögerung um eine halbe Sekunde.\n";
}
// Optimal ist:
$nano = time_nanosleep(2, 100000);
if ($nano === true) {
echo "Verzögert um 2 Sekunden und 100 Millisekunden.\n";
} elseif ($nano === false) {
echo "Keine Verzögerung.\n";
} elseif (is_array($nano)) {
$seconds = $nano['seconds'];
$nanoseconds = $nano['nanoseconds'];
echo "Von einem Signal unterbrochen.\n";
echo "Verbleibende Verzögerung: $seconds Sekunden, $nanoseconds Nanosekunden.";
}
?>
Siehe auch
- sleep() - Verzögert die Programmausführung
- usleep() - Verzögert die Programmausführung (in Mikrosekunden)
- time_sleep_until() - Lässt das Skript bis zur angegebenen Zeit schlafen
- set_time_limit() - Beschränkt die maximale Ausführungszeit