1--TEST-- 2Closures as a signal handler 3--SKIPIF-- 4<?php 5 if (!extension_loaded("pcntl")) print "skip"; 6 elseif (!function_exists("pcntl_signal")) print "skip pcntl_signal() not available"; 7 elseif (!function_exists("posix_kill")) print "skip posix_kill() not available"; 8 elseif (!function_exists("posix_getpid")) print "skip posix_getpid() not available"; 9?> 10--FILE-- 11<?php 12declare (ticks = 1); 13 14pcntl_signal(SIGTERM, function ($signo) { echo "Signal handler called!\n"; }); 15 16echo "Start!\n"; 17posix_kill(posix_getpid(), SIGTERM); 18$i = 0; // dummy 19echo "Done!\n"; 20 21?> 22--EXPECT-- 23Start! 24Signal handler called! 25Done! 26