php

PHP'de usleep() İşlevinin Kullanımı

PHP'de usleep() İşlevinin Kullanımı

PHP'de betiğin yürütülmesini bir süre geciktirmek için iki işlev kullanılır. Bunlar usleep() ve uyku(). usleep() işlevi, betiğin yürütülmesini belirli mikrosaniyeler için geciktirmek için kullanılır. Negatif mikrosaniye değeri sağlanırsa bu işlev bir istisna oluşturabilir. Bu işlev, çağrıldığında da CPU döngüsünü tüketir. Bu işlevin PHP'de nasıl kullanılabileceği bu öğreticide gösterilmiştir.

Sözdizimi:

Bu işlevin sözdizimi aşağıda verilmiştir.

void usleep (int mikrosaniye)

Bu işlev, bu işlevin kullanıldığı yerde komut dosyasını geciktirmek için kullanılan işlev argümanları olarak mikrosaniye değerini alır. Bu işlev hiçbir şey döndürmez. Bu işlevin farklı kullanımları aşağıda çeşitli örnekler kullanılarak gösterilmiştir.

Örnek-1: 5 saniye beklemek için usleep() kullanımı

Aşağıdaki örnek, betikte 5 saniyelik gecikmeyi ayarlamak için usleep()'in nasıl kullanılabileceğini gösterir. Aşağıdaki komut dosyasıyla bir PHP dosyası oluşturun. geçerli tarih ve saati okumak için komut dosyasında date() işlevi kullanılır. usleep() işlevi, ilk date() işlevi yürütüldükten sonra çağrılır. 5 saniye, 5000000 mikrosaniyeye eşittir. Bu nedenle, gecikmeyi 5 saniyeye ayarlamak için usleep() argüman değeri olarak 5000000 kullanılır. Ardından, date() işlevi yeniden çağrılır.

//Geçerli tarih ve saati göster
echo tarih('d F, Y h:i:s a'). "
";
//Mesajı yazdır
echo "5 saniye bekleniyor..
";
//Komut dosyasının yürütülmesini 5 saniye geciktir
uyku(5000000);
 
//Geçerli tarih ve saati göster
echo tarih('d F, Y h:i:s a'). "
";
?>

Çıktı

Komut dosyası, sunucudan çalıştırıldıktan sonra 5 saniye bekleyecektir. Çıktı, komut dosyasının yürütmeyi 05:32:05'te başlattığını ve komut dosyasının 05:32:11'de sonlandırıldığını gösterir. Yani, çıktıyı görüntülemeden önce 5 saniye geçti.

Örnek-2: Rastgele zamanları beklemek için usleep() kullanımı

Aşağıdaki örnek, rastgele sayıda gecikmeyi ayarlamak için usleep() ve Rand() işlevlerinin nasıl kullanılabileceğini gösterir. Aşağıdaki komut dosyasıyla bir PHP dosyası oluşturun. Komut dosyasının ilk date() işlevi mevcut sistem saatini okuyacaktır. Ardından, 1000000 ile 4000000 arasında bir sayı üretmek için Rand() işlevi kullanılır ve oluşturulan rastgele değer, usleep() işlevinin bağımsız değişken değeri olarak kullanılır. Üretilen rastgele sayı 1000000'e bölünecek ve saniye cinsinden gecikme süresini elde etmek için round() işlevinde kullanılacaktır. İkinci date() işlevi, usleep() işlevini yürüttükten sonra zaman değerini okumak için kullanılır.

// Geçerli saati göster
yankı tarihi('h:i:s a'). "
";
//Rastgele mikrosaniye değerini ayarla
$gecikme = Rand(1000000,4000000);
// Komut dosyasının yürütülmesini tanımlı saniyeler için geciktir
usleep($gecikme);
//Mikrosaniyeyi saniyeye çevir
$saniye = yuvarlak($gecikme/1000000);
//Mesajı yazdır
echo "$saniye saniye bekleniyor..
";
// Geçerli saati göster
yankı tarihi('h:i:s a'). "
";
?>

Çıktı

Aşağıdaki çıktıya göre, script sunucuda yürütüldükten sonra 4 saniye bekledi. Çıktı, komut dosyasının yürütmeyi 05:35:40'ta başlattığını ve komut dosyasının 05:35:44'te sonlandırıldığını gösterir. Yani, senaryo 4 saniye ertelendi.

Örnek-3: Komut dosyasını 2 saniye sonra tekrarlayın

Aşağıdaki örnek, kullanıcının seçimine bağlı olarak 2 saniyelik gecikmeden sonra aynı komut dosyasının nasıl tekrarlanabileceğini gösterir. adlı bir HTML dosyası oluşturun form1.html değerini almak için aşağıdaki komut dosyası ile x ve n.

form1.html




usleep() işlevinin kullanımı



x değerini girin:

n değerini girin:




Formun verileri adlı PHP dosyasına gönderilecek güç.php x üzeri n'yi hesaplamak için. oluştur güç.php aşağıdaki komut dosyasıyla dosya. HTML formunun alan değerlerinin ayarlanıp ayarlanmadığını kontrol edecektir. Değerler doğru bir şekilde gönderilirse, x'in gücü n hesaplanacak ve komut dosyası 2 saniye bekleyecek. 2 saniye sonra bir uyarı kutusu görünecektir. Uyarı kutusunun Tamam düğmesini tıkladıktan sonra kullanıcıdan aynı görevi tekrarlamasını isteyen bir onay kutusu olan başka bir form görünecektir.

güç.php

//x ve n değerlerinin ayarlanıp ayarlanmadığını kontrol edin
if(isset($_POST['x']) && isset($_POST['n']))

$işaret = yanlış;
$x = $_POST['x'];
$n = $_POST['n'];
// x üzeri n'yi hesapla
$sonuç = pow($x,$n);
//Sonucu yazdır
echo "$x üzeri $n kuvveti $sonucudur
";
//Görevi tekrarlamak veya tekrarlamamak için formu görüntüle
Eko '
Görevi tekrar yap
';
//İki saniye bekleyin
uyku(2000000);
// Uyarıyı göster
echo "alert('2 saniye bekledi... ')";

Başka

Eğer(!isset($_POST['tamam']))
dahil('form1.html');
Başka

//Onay kutusu açıksa görevi tekrar et
if(isset($_POST['görev'] ))
if($_POST['görev'] == 'açık')
dahil('form1.html');
Başka
die("Komut dosyası sonlandırıldı.");

Başka
die("Komut dosyası sonlandırıldı.");


?>

Çıktı

PHP betiğini sunucudan çalıştırdıktan sonra aşağıdaki form görünecektir. Çıktıda, x değeri için 4, n için 3 ayarlanır.


Formu gönderdikten sonra, komut dosyası hesaplayacaktırve uyarı kutusunu görüntülemeden önce 2 saniye bekleyin.

Başka bir değerin gücünü hesaplamak için önceki formu tekrar görüntüleme seçeneğini seçmek için aşağıdaki form görünecektir x ve n Tamam düğmesine bastıktan sonra.


Kullanıcı düğmeye basarsa TAMAM MI onay kutusunu seçmeden düğmesine basarsanız, komut dosyası aşağıdaki mesaj görüntülenerek sonlandırılacaktır.

Sonuç

PHP betiği programlama amacıyla belirli bir süre için gecikme gerektirdiğinde, görevi yapmak için usleep() işlevi kullanılabilir. usleep() işlevi, bu öğreticide okuyucuların komut dosyasında nasıl gecikme oluşturulacağını bilmelerine yardımcı olmak için çeşitli örnekler kullanılarak açıklanmıştır. Sleep (), PHP'nin komut dosyasında geliştirilecek başka bir yerleşik işlevidir.

Linux için En İyi Komut Satırı Oyunları
Komut satırı, Linux kullanırken yalnızca en büyük müttefikiniz değil, aynı zamanda eğlence kaynağı da olabilir, çünkü onu özel bir grafik kartı gerekt...
Linux için En İyi Gamepad Eşleme Uygulamaları
Tipik bir klavye ve fare giriş sistemi yerine bir gamepad ile Linux'ta oyun oynamayı seviyorsanız, sizin için bazı faydalı uygulamalar var. Çoğu PC oy...
Linux Oyuncuları için Faydalı Araçlar
Linux'ta oyun oynamayı seviyorsanız, oyun deneyimini geliştirmek için Wine, Lutris ve OBS Studio gibi uygulamaları ve yardımcı programları kullanmış o...