(PHP 7 >= 7.4.0, PHP 8)
sapi_windows_set_ctrl_handler — CTRL olayı işleyiciyi tanımlar veya kaldırır
Windows CLI süreçlerinin CTRL+C
ve
CTRL+BREAK
olaylarını yakalamasını veya yok saymasını
sağlayan bir CTRL olay işleyici tanımlar veya kaldırır. Çok evreli
ortamlarda işlev yalnızca ana evreden çağrıldığında bu mümkündür.
işleyici
Atanacak veya kaldırılacak geri çağırım işlevi. Atanırsa, bir
CTRL+C
veya CTRL+BREAK
olayı
meydana geldiğinde bu işlev çağrılır. İşlevin sözdizimi aşağıdaki gibi
olmalıdır:
olay
CTRL
olayı;
PHP_WINDOWS_EVENT_CTRL_C
veya PHP_WINDOWS_EVENT_CTRL_BREAK
olabilir.
geri_çağırım
bağımsız değişkenine null
aktarımı
sürecin CTRL+C
olaylarını yok saymasını ancak
CTRL+BREAK
olaylarını yakalamasına sebep olur.
ekle
true
ise işleyici atanır, false
ise kaldırılır.
Başarı durumunda true
, başarısızlık durumunda false
döner.
Örnek 1 - sapi_windows_set_ctrl_handler() örneği
Bu örnekte CTRL
olaylarının nasıl yakalanacağı
gösterilmiştir.
<?php
function ctrl_isleyici(int $olay)
{
switch ($olay) {
case PHP_WINDOWS_EVENT_CTRL_C:
echo "CTRL+C tuşlandı\n";
break;
case PHP_WINDOWS_EVENT_CTRL_BREAK:
echo "CTRL+BREAK tuşlandı\n";
break;
}
}
sapi_windows_set_ctrl_handler('ctrl_isleyici');
while (true); // sonsuz döngü, işleyici tetiklenene dek sürer
?>