socket_last_error - возвращает последнюю ошибку на сокете.
Описание
int socket_last_error ([resource socket])
Предупреждение!
Эта функция - ЭКСПЕРИМЕНТАЛЬНАЯ. Поведение, имя и всё остальное, что задокументировано для данной функции может быть изменено в будущих релизах РНР без предупреждения. Вы можете использовать эту функцию только на свой страх и риск.
Эта функция возвращает код ошибки сокета.
Если ресурс сокета передаётся этой функции, возвращается код последней
ошибки, возникшей на этом конкретном сокете. Если ресурс сокета опущен, возвращается error-код неудачи последней функции сокета.
Последнее может помочь при работе с такими функциями как socket_create(), которая не возвращает сокет при неудаче, и с
socket_select(), которая может завалиться по причинам, не связанным непосредственно с
конкретным сокетом. Код ошибки можно применять в socket_strerror(), которая возвращает строку с описанием данного error-кода.
if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP))) {
die("Couldn’t create socket, error code is: " . socket_last_error() .
",error message is: " . socket_strerror(socket_last_error()));
}
Примечание: socket_last_error() не зачищает код ошибки; для этих целей используется
socket_clear_error().