socket_last_error

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

socket_last_errorソケットの直近のエラーを返す

説明

socket_last_error ([ resource $socket ] ) : int

ソケットリソースがこの関数に渡された場合、この特定のソケットに発生した 直近のエラーが返されます。ソケットリソースが省略された場合、 直近にエラーを発生したソケット関数のエラーコードが返されます。 後者は、失敗した場合にソケットを返さない socket_create() のような関数や 特定のソケットに直接関係ない理由で失敗する可能性がある socket_select() で特に有用です。 このエラーコードは、指定したエラーコードを表す文字列を得るために socket_strerror() に渡すものとしても適しています。

エラーが発生していない場合や socket_clear_error() でクリアされた後である場合は、 この関数は 0 を返します。

パラメータ

socket

socket_create() で作成したソケットリソース。

返り値

この関数は、ソケットのエラーコードを返します。

例1 socket_last_error() の例

<?php
$socket 
= @socket_create(AF_INETSOCK_STREAMSOL_TCP);

if (
$socket === false) {
    
$errorcode socket_last_error();
    
$errormsg socket_strerror($errorcode);
    
    die(
"ソケットを作成できません: [$errorcode$errormsg");
}
?>

注意

注意:

socket_last_error() はエラーコードをクリアしません。 クリアするには socket_clear_error() を使用してください。