Error handling

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!

 

Next chapter: The Standard PHP Library >>

Previous chapter: POSIX functions

Jump to:

 

Home: Table of Contents

Follow us on Identi.ca or Twitter

Username:   Password:
Create Account | About TuxRadar