array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'function.socket-strerror.php', 1 => 'socket_strerror', ), 'up' => array ( 0 => 'ref.sockets.php', 1 => 'ソケット 関数', ), 'prev' => array ( 0 => 'function.socket-shutdown.php', 1 => 'socket_shutdown', ), 'next' => array ( 0 => 'function.socket-write.php', 1 => 'socket_write', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/sockets/functions/socket-strerror.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_strerror — ソケットエラーの内容を文字列として返す
socket_strerror() は、パラメータ
error_code
に socket_last_error()
の返すソケットエラーコードを受け取り、
対応する内容を文字列で返します。
注意:
socket 拡張モジュールが出すエラーメッセージは英語ですが、 この関数から取得したシステムメッセージは現在のロケール (
LC_MESSAGES
) にあわせた表示となります。
error_code
パラメータに対応するエラーメッセージを返します。
例1 socket_strerror() の例
<?php
if (false == ($socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP))) {
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";
}
?>
上記の例の出力はおそらく次のようになります (このスクリプトがルート権限で実行されていないことを仮定します)。
socket_bind() failed: reason: Permission denied