socket_bind

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

socket_bind锟斤拷锟阶斤拷锟街帮拷锟斤拷锟斤拷

说锟斤拷

socket_bind ( resource $socket , string $address [, int $port = 0 ] ) : bool

锟斤拷 address 锟斤拷 socket锟斤拷 锟矫诧拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷使锟斤拷 socket_connect() 锟斤拷锟斤拷 socket_listen() 锟斤拷锟斤拷一锟斤拷锟斤拷锟斤拷之前锟斤拷

锟斤拷锟斤拷

socket

锟斤拷 socket_create() 锟斤拷锟斤拷锟斤拷一锟斤拷锟斤拷效锟斤拷锟阶斤拷锟斤拷锟斤拷源锟斤拷

address

锟斤拷锟斤拷捉锟斤拷锟斤拷锟� AF_INET 锟藉,锟斤拷么 address 锟斤拷锟斤拷锟斤拷一锟斤拷锟侥碉拷址锟斤拷锟� IP 锟斤拷址锟斤拷锟斤拷锟斤拷 127.0.0.1 锟斤拷锟斤拷

锟斤拷锟斤拷捉锟斤拷锟斤拷锟� AF_UNIX 锟藉,锟斤拷么 address 锟斤拷 Unix 锟阶斤拷锟斤拷一锟斤拷锟街o拷锟斤拷锟斤拷 /tmp/my.sock 锟斤拷锟斤拷

port 锟斤拷锟斤拷选锟斤拷

锟斤拷锟斤拷 port 锟斤拷锟斤拷锟斤拷锟斤拷 AF_INET 锟阶斤拷锟斤拷锟斤拷锟接碉拷时锟津,诧拷锟斤拷指锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷要锟斤拷锟斤拷锟侥端口号★拷

锟斤拷锟斤拷值

锟缴癸拷时锟斤拷锟斤拷 TRUE锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷锟斤拷锟结传锟斤拷 socket_last_error() 锟斤拷锟斤拷锟斤拷锟斤拷瞬锟斤拷锟斤拷锟斤拷锟� socket_strerror() 锟斤拷锟斤拷缘玫锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷说锟斤拷锟斤拷

锟斤拷锟斤拷

Example #1 使锟斤拷 socket_bind() 锟斤拷锟斤拷锟斤拷锟阶斤拷锟斤拷锟斤拷源锟斤拷址

<?php
// Create a new socket
$sock socket_create(AF_INETSOCK_STREAMSOL_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' "\r\n" .
           
'Host: example.com' "\r\n\r\n";
socket_write($sock$request);

// Close
socket_close($sock);

?>

注锟斤拷

Note:

锟矫猴拷锟斤拷锟斤拷锟斤拷锟斤拷 socket_connect() 之前使锟矫★拷

Note:

Windows 9x/ME 锟斤拷锟斤拷锟斤拷注锟斤拷锟�: 锟斤拷锟斤拷锟斤拷园锟斤拷捉锟斤拷锟斤拷锟皆达拷锟揭伙拷锟斤拷锟斤拷锟侥碉拷址锟斤拷锟斤拷锟斤拷锟斤拷锟街凤拷锟斤拷潜锟斤拷锟斤拷牡锟街凤拷锟斤拷锟矫� socket_last_error() 锟斤拷锟杰会返锟斤拷一锟斤拷锟斤拷效锟侥达拷锟斤拷锟斤拷搿�

锟轿硷拷