socket_getsockname
指定したソケットのローカル側に問い合わせ、その型に応じてホスト/ポート、あるいは Unix ファイルシステムのパスを返す
説明
bool socket_getsockname(Socket $socket
, string &$address
, int &$port
= null
)
注意:
socket_getsockname は、
socket_accept で作成した AF_UNIX
ソケットとともに使用することはできません。意味のある値が返されるのは、
socket_accept で作成したソケットか
socket_bind に続くプライマリサーバーソケットのみです。
パラメータ
-
socket
-
socket_create あるいは socket_accept
で作成した Socket クラスのインスタンス。
-
address
-
指定されたソケットの型が AF_INET
あるいは
AF_INET6
であった場合、socket_getsockname
はローカルの IP アドレス を適切な書式(例:
127.0.0.1
あるいは fe80::1
)に
したものを address
パラメータに、そしてもし
オプションの port
パラメータが指定されていれば
そこにポートを格納します。
指定されたソケットの型が AF_UNIX
であった場合、
socket_getpeername は Unix ファイルシステムのパス
(例: /var/run/daemon.sock
)を
address
パラメータに格納します。
-
port
-
指定した場合は、関連付けるポートを保持します。
戻り値
成功した場合に true
を、失敗した場合に false
を返します。 socket_getsockname は、
ソケットの型が AF_INET
、
AF_INET6
あるいは AF_UNIX
のいずれでもない場合にも false
を返します。この場合には、
直近のソケットエラーコードは更新されません。
参考
- socket_getpeername
- socket_last_error
- socket_strerror