当前位置: 首页> 函数类别大全> socket_getpeername

socket_getpeername

查询给定套接字的远程端,它可能导致主机/端口或Unix文件系统路径,具体取决于其类型
名称:socket_getpeername
分类:套接字Sockets
所属语言:php
一句话介绍: 获取与套接字关联的远程主机的IP地址和端口号

函数名:socket_getpeername()

适用版本:PHP 4, PHP 5, PHP 7

用法:socket_getpeername() 函数用于获取与套接字关联的远程主机的IP地址和端口号。

语法:bool socket_getpeername ( resource $socket , string &$address [, int &$port ] )

参数:

  • $socket:必需。一个有效的套接字资源,由 socket_create() 或 socket_accept() 返回。
  • $address:必需。用于存储远程主机的IP地址。
  • $port:可选。用于存储远程主机的端口号。

返回值:成功时返回 true,失败时返回 false。

示例:

<?php
// 创建一个TCP套接字
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

// 绑定套接字到IP地址和端口
socket_bind($socket, '127.0.0.1', 8080);

// 监听连接
socket_listen($socket);

// 接受客户端连接
$clientSocket = socket_accept($socket);

// 获取客户端的IP地址和端口号
if (socket_getpeername($clientSocket, $address, $port)) {
    echo "客户端IP地址:{$address}\n";
    echo "客户端端口号:{$port}\n";
} else {
    echo "获取远程主机信息失败\n";
}

// 关闭套接字
socket_close($socket);
?>

在上面的示例中,我们创建了一个TCP套接字并绑定到本地地址和端口。然后,我们监听连接并接受客户端连接。最后,使用 socket_getpeername() 函数获取客户端的IP地址和端口号,并将它们打印出来。

同类函数
热门文章