(PHP 5, PHP 7, PHP 8)
time_nanosleep — Çalışmayı saniye ve nanosaniye cinsinden geciktirir
Betiğin çalışmasını süre saniye ve
nanosüre nanosaniye kadar bekletir.
süreBeklenecek saniye sayısını belirten negatif olmayan bir tamsayı.
nanosüreSaniyenin milyarda birlerini belirten negatif olmayan bir tamsayı.
Bilginize: Windows'ta, donanıma bağlı olarak betik belirtilenden daha uzun süre bekleyebilir.
Başarı durumunda true, başarısızlık durumunda false döner.
Eğer gecikme bir sinyalle kesilirse şu bileşenlere sahip bir ilişkisel dizi döner:
seconds - Kalan sürenin saniye sayısı.
nanoseconds - Son saniyeden kalan nanosaniye sayısı.
Örnek 1 - time_nanosleep() örneği
<?php
// Dikkat! Bu beklendiği gibi çalışamazsa bir dizi döndürür
if (time_nanosleep(0, 500000000)) {
echo "Yarım saniyeliğine uyundu.\n";
}
// Bu daha iyidir:
if (time_nanosleep(0, 500000000) === true) {
echo "Yarım saniyeliğine uyundu.\n";
}
// Bu ise en iyisidir:
$nano = time_nanosleep(2, 100000);
if ($nano === true) {
echo "2 saniye, 100 milisaniyeliğine uyundu.\n";
} elseif ($nano === false) {
echo "Uyku kaçtı.\n";
} elseif (is_array($nano)) {
$seconds = $nano['seconds'];
$nanoseconds = $nano['nanoseconds'];
echo "Gecikme bir sinyalle kesildi.\n";
echo "Kalan süre: $seconds saniye, $nanoseconds nanosaniye.";
}
?>