fsockopen函数能够运用,首先要开启php.ini中的allow_url_open=on;
fsockopen是对socket客户端代码的封装,该函数中封装了socket_create,socket_connect。
服务器端代码:rver.php
复制代码 代码如下:
<?php
error_reporting(e_all);
t_time_limit(0);
$address = ‘127.0.0.1’;
$por生死搭档t = 10008;
//创建端口
if (($sock = socket_create(af_inet, sock_stream, sol_tcp)) === fal) {
echo “socket_create() failed:reason:” . socket_strerror(socket_last_error()) . “\n”;
}
//绑定
if (socket_bind($sock, $address, $port) === fal) {
echo “socket_bind() failed :reason:” . socket_strerror(socket_last_error($sock)) . “\n”;
}
//监听
if (socket_listen($sock, 5) === fal) {
echo “socket_长春财经学院学费bind() failed :reason:” . socket_strerror(socket_last_error($sock)) . “\n”;
}
while (true) {
//得到一个链接
if (($msgsock = socket_accept($sock)) === fal) {
echo “socket_accepty() failed :reason:”.socket_strerror(socket_last_error($sock)) .求成 “\n̶节目单制作1;;
break;
}
//welcome 发送到客户端
$msg = “1.<font color=’red’>rver nd:welcome</font><br/>”;
socket_write($msgsock, $msg, strlen($msg)); //返回信息给客户端
echo ‘read client message\n’;
$buf = socket_read($msgsock, 8192); //获取客户端发送过来的信息
$talkback = “2.received message:$buf\n”;
echo $talkback;
if (fal === socket_write($清明是几月几日msgsock, $talkback, strlen($talkback))) { //返回信息给客户端
echo “socket_write() failed reason:” . socket_strerror(socket_last_error($sock)) .”\n”;
} el {
echo ‘nd success’;
}
socket_clo($msgsock);
}
socket_clo($sock);
客户端代码:fsocket.php
复制代码 代码如下:
<?php
$fp = fsockopen(“127.0.0.1”, 10008, &$errno, &$errstr, 10);
if (!$fp) {
echo $errstr . ” (“. $errno . “)<br>n”;
} el {
$in = “head / http/1.1\r\n”;
$in .= “host: localhost \r\n”;
$in .= “connection: clo\r\n\r\n”;
fputs($fp, $in);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclo($fp);
}
本文发布于:2023-04-06 10:37:51,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/e0e17e29c7de50e07b346075e9f46b39.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:基于php socket(fsockopen)的应用实例分析.doc
本文 PDF 下载地址:基于php socket(fsockopen)的应用实例分析.pdf
留言与评论(共有 0 条评论) |