string posix_get_last_error ( void )
int posix_strerror ( string error_number)
As I mentioned already, the PHP POSIX functions are really just calls to the standard C POSIX functions, and this has the downside of making them very hard to debug. Two functions alleviate this problem: posix_get_last_error() and posix_strerror(), which grab the last error number and turn that error number into a string respectively. So, if you want to check for an error when calling posix_kill(), you'd use code like this:
<?php
posix_kill(293811, SIGKILL);
$errno = posix_get_last_error();
if ($errno) {
echo "Error encountered: ", posix_strerror($errno), "\n";
} else {
echo "No errors encountered.\n";
}
?>
In that script, the process ID 293811 is just made up, which is the point: posix_kill() will probably fail because the PID doesn't exist. Or, if it does exist, it might not belong to you, and so also probably will not be killed - unless you're root, of course!
Want to learn PHP 7?
Hacking with PHP has been fully updated for PHP 7, and is now available as a downloadable PDF. Get over 1200 pages of hands-on PHP learning today!
If this was helpful, please take a moment to tell others about Hacking with PHP by tweeting about it!
Next chapter: The Standard PHP Library >>
Previous chapter: POSIX functions
Jump to:
Home: Table of Contents
Copyright ©2015 Paul Hudson. Follow me: @twostraws.