php的socket,PHP Socket范例

PHP Socket实例

下面是一段php socket编程的例子,当然也可以使用fsockopen

error_reporting(E_ALL);

echo "

TCP/IP Connection

\n";

/* Get the port for the WWW service. */

$service_port = getservbyname('www', 'tcp');

/* Get the IP address for the target host. */

$address = gethostbyname('www.example.com');

/* Create a TCP/IP socket. */

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

if ($socket === false) {

echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";

} else {

echo "OK.\n";

}

echo "Attempting to connect to '$address' on port '$service_port'...";

$result = socket_connect($socket, $address, $service_port);

if ($result === false) {

echo "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";

} else {

echo "OK.\n";

}

$in = "HEAD / HTTP/1.1\r\n";

$in .= "Host: www.example.com\r\n";

$in .= "Connection: Close\r\n\r\n";

$out = '';

echo "Sending HTTP HEAD request...";

socket_write($socket, $in, strlen($in));

echo "OK.\n";

echo "Reading response:\n\n";

$buf = 'This is my buffer.';

if (false !== ($bytes = socket_recv($socket, $buf, 2048, MSG_WAITALL))) {

echo "Read $bytes bytes from socket_recv(). Closing socket...";

} else {

echo "socket_recv() failed; reason: " . socket_strerror(socket_last_error($socket)) . "\n";

}

socket_close($socket);

echo $buf . "\n";

echo "OK.\n\n";

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值