(PHP 5, PHP 7, PHP 8)
time_nanosleep — Çalışmayı saniye ve nanosaniye cinsinden geciktirir
$süre
, int $nanosüre
) : array|bool
Betiğin çalışmasını süre
saniye ve
nanosüre
nanosaniye kadar bekletir.
süre
Beklenecek saniye sayısını belirten negatif olmayan bir tamsayı.
nanosüre
Saniyenin 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.";
}
?>