php使用Berkley的socket库来创建它的连接。socket只不过是一个数据结构。你使用这个socket数据结构去开始一个客户端和服务器之间的会话。服务器启动并一直监听准备随时接收来自客户端的连接。当一个客户端连接服务器,它就打开了服务器正在进行监听的一个端口进行会话。这时,服务器端接受客户端的连接请求,那么就进行一次循环。现在这个客户端就能够发送信息到服务器,服务器也能发送信息给客户端。
socket_bind()函数原型为:
bool socket_bind ( resource $socket , string $address [, int $port = 0 ] )
php通过socket_bind()设置IP地址代码示例:
<?php
// Create a new socket
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// An example list of IP addresses owned by the computer
$sourceips['kevin'] = '127.0.0.1';
$sourceips['madcoder'] = '127.0.0.2';
// Bind the source address
socket_bind($sock, $sourceips['madcoder']);
// Connect to destination address
socket_connect($sock, '127.0.0.1', 80);
// Write
$request = 'GET / HTTP/1.1' . "rn" .
'Host: example.com' . "rnrn";
socket_write($sock, $request);
// Close
socket_close($sock);
?>