socket_strerror

(PHP 4 >= 4.1.0, PHP 5)

socket_strerror -- Retorna uma string descrevendo o erro do socket

Descrição

string socket_strerror ( int errno )

Atenção

Esta função é EXPERIMENTAL. Isso quer dizer que o comportamento desta função e seu nome, incluindo TUDO o que está documentado aqui pode mudar em futuras versões do PHP, SEM QUALQUER NOTIFICAÇÃO. Esteja avisado, e use esta função por sua própria conta e risco.

socket_strerror() pega como parâmetro errno um código de erro de socket retornado por socket_last_error() e retorna a explicação em texto correspondente. Isso faz com que isso tenha uma imagem de saída mais agradável porque alguma coisa não funciona; for exemplo, ao invés de ter que fazer procura de uma inclusão de um arquivo do sistema do que '-111' significa, você somente passa isso para socket_strerror(), e ele lhe fala o que acontece.

Exemplo 1. Exemplo de socket_strerror()

<?php
if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, 0))) {
   echo
"socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}

if (
false == (@socket_bind($socket, '127.0.0.1', 80))) {
   echo
"socket_bind() failed: reason: " . socket_strerror(socket_last_error($socket)) . "\n";
}
?>

A saída esperada do exemplo acima (assumindo que o script não está rodando com privilégios de root):
socket_bind() failed: reason: Permission denied

Veja também socket_accept(), socket_bind(), socket_connect(), socket_listen(), e socket_create().