socket_last_error

Returns the last error on the socket

Description

int socket_last_error(Socketnull $socket = null)

If a Socket instance is passed to this function, the last error which occurred on this particular socket is returned. If socket is null, the error code of the last failed socket function is returned. The latter is particularly helpful for functions like socket_create which don't return a socket on failure and socket_select which can fail for reasons not directly tied to a particular socket. The error code is suitable to be fed to socket_strerror which returns a string describing the given error code.

If no error had occurred, or the error had been cleared with socket_clear_error, the function returns 0.

Parameters

socket

A Socket instance created with socket_create.

Return Values

This function returns a socket error code.

Changelog

Version Description
8.0.0 socket is a Socket instance now; previously, it was a resource.
8.0.0 socket is nullable now.

Examples

Example #1 socket_last_error example

<?php
$socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

if ($socket === false) {
    $errorcode = socket_last_error();
    $errormsg = socket_strerror($errorcode);
    
    die("Couldn't create socket: [$errorcode] $errormsg");
}
?>

Notes

Note:

socket_last_error does not clear the error code, use socket_clear_error for this purpose.