准备工作:
使用VMware软件安装Centos7 安装php7 和swoole扩展
<?php
//创建TCP服务器
$host="0.0.0.0";//监听的服务器ip地址
$port="9501";//监听端口
/**
* @param $host 主机
* @param $post 端口
* @param $model SWOOLE_PROCESS 多进程
* @param $scoket_type SWOOLE_SOCKET_TCP TCP为socket连接
*/
$serv = new Swoole\Server($host,$port);
//设置服务器对象
//$serv->set(array(
// 'worker_num' => 4,
// 'daemonize' => false, //是否设置为守护线程后台运行
// 'backlog' => 128,
//));
//当建立连接的时候
/**
* $param $serv 服务器建立对象
* @param $fd 客户端对象
*/
$serv->on("connect",function($serv,$fd){
echo "建立连接\n";
});
/**
* $param $serv 服务器对象
* @param $fd 客户段对象
* @param $from_id 客户端id
* @param 接受到数据
*/
$serv->on("receive",function($serv,$fd,$from_id,$data){
//将数据发送回给客户端
var_dump($serv);
$serv->send($fd,$data);
});
//当关闭服务器对象
/**
* @param $serv 服务器对象
* @param $fd 客户端对象
*/
$serv->on("close",function($serv,$fd){
echo "关闭连接\n";
});
//启动服务器
$serv->start();
在shell工具中关闭防火墙:
systemctl stop firewalld
启动TCP服务
php TCP.php
查看服务是否正常启动:
ps -ajft
使用网络助手,连接TCP服务器