socket_last_error

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

socket_last_errorRetorna o último erro no soquete

Descrição

socket_last_error(?Socket $socket = null): int

Se uma instância de Socket for passada para esta função, o último erro que ocorreu neste soquete específico será retornado. Se socket for null, o código de erro da última função de soquete com falha será retornado. O último é particularmente útil para funções como socket_create() que não retorna um soquete em caso de falha e socket_select() que pode falhar por motivos não diretamente ligados a um soquete específico. O código de erro é adequado para ser usado em socket_strerror() que retorna uma string descrevendo o código de erro fornecido.

Se nenhum erro ocorreu ou o erro foi eliminado com socket_clear_error(), a função retorna 0.

Parâmetros

socket

Uma instância de Socket criada com socket_create().

Valor Retornado

Esta função retorna um código de erro de soquete.

Registro de Alterações

Versão Descrição
8.0.0 O parâmetro socket agora espera uma instância de Socket; anteriormente, um resource era esperado.
8.0.0 socket agora pode ser nulo.

Exemplos

Example #1 Exemplo de 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("Não foi possível criar o soquete: [$errorcode] $errormsg");
}
?>

Notas

Note:

socket_last_error() não limpa o código de erro, socket_clear_error() deve ser usado para este fim.