socket_last_error

(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)

socket_last_errorВозвращает последнюю ошибку на сокете

Описание

socket_last_error(?Socket$socket = null): int

Если экземпляр Socket передан этой функции, то возвращается последняя ошибка, которая произошла на этом конкретном сокете. Если socket не указан, возвращается код ошибки последней неудавшейся функции сокетов. Последнее особенно полезно для таких функций, как socket_create(), которая не возвращает сокет в случае неудачи и socket_select(), которая может закончиться неудачно по причинам, не связанным непосредственно с каким-либо конкретным сокетом. Код ошибки подходит для передачи функции socket_strerror(), которая возвращает строку, описывающую указанный код ошибки.

Если ошибок нет или они были очищены функцией socket_clear_error(), функция вернёт 0.

Список параметров

socket

Экземпляр Socket, созданный при помощи функции socket_create().

Возвращаемые значения

Эта функция возвращает код ошибки сокета.

Список изменений

ВерсияОписание
8.0.0socket теперь экземпляр класса Socket; ранее был ресурсом (resource).
8.0.0socket теперь допускает значение null.

Примеры

Пример #1 Пример использования socket_last_error()

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

if (
$socket === false) {
$errorcode = socket_last_error();
$errormsg = socket_strerror($errorcode);

die(
"Не могу создать сокет: [$errorcode] $errormsg");
}
?>

Примечания

Замечание:

socket_last_error() не очищает код ошибки, используйте socket_clear_error() для этой цели.

To Top