PHP当作客户端访问连接另外一个socket的方法
描述:php文件作为前端界面 连接另外一个服务器的socket
范围:所有php程序
框架:workerman 下载地址:http://www.chtml.cn/product/show/10930
官方示例 详细见AsyncTcpConnection类 workerman手册
<?php
use Workerman\Worker;
use Workerman\Connection\AsyncTcpConnection;
require_once __DIR__ . '/Workerman/Autoloader.php';$worker = new Worker();$worker->onWorkerStart = function($worker){// 设置访问对方主机的本地ip及端口(每个socket连接都会占用一个本地端口)$context_option = array('socket' => array(// ip必须是本机网卡ip,并且能访问对方主机,否则无效'bindto' => '这是你的网卡ip:2333',),);$con = new AsyncTcpConnection('ws://wb.youqiong.net:80', $context_option);$con->onConnect = function($con) {$con->send('hello');};$con->onMessage = function($con, $data) {echo $data;};$con->onClose = function($con) {// 如果连接断开,则在1秒后重连$con->reConnect(1);};$con->connect();
};
Worker::runAll();
配合gateway-worker使用
public static function onWorkerStart($businessWorker){// 设置访问对方主机的本地ip及端口(每个socket连接都会占用一个本地端口)$context_option = array('socket' => array(// ip必须是本机网卡ip,并且能访问对方主机,否则无效'bindto' =>'这是你的网卡ip:2333',),);$con = new AsyncTcpConnection('ws://wb.youqiong.net:8887', $context_option);$con->onConnect = function($con) {$con->send('66666');};$con->onMessage = function($con, $data) {echo $data;};$con->onClose = function($con) {// 如果连接断开,则在1秒后重连$con->reConnect(1);};$con->connect();}
获取自己服务器的网卡ip的方法
1.centos ifconfig
7.0以上版本 ip addr
2.window ipconfig
3.ubuntu ifconfig
注释:这块可以任意把这个代码片段放到任何一个workerman执行文件里 要是初始化的哪个流程中使用。
PHP当作客户端访问连接另外一个socket的方法相关推荐
- 使用多线程实现多客户端的连接(通过Socket实现TCP编程)
服务器线程类 package com.susu;import java.io.BufferedReader; import java.io.IOException; import java.io.In ...
- Windows网络共享或共享打印机无法访问连接的简单终极解决方法
相信上面这张报错图很多人都遇到过吧. 微软的网络访问真的设计的很奇葩,明明你共享权限.防火墙.用户都已经设置好了,但当你用资源管理器输入\\双斜杠IP地址或计算机名后就弹出上面的报错窗口. 其实有个非 ...
- Exchange 2010 RPC配置静态RPC端口客户端访问、通讯簿服务和公用文件夹连接
Exchange 2010 RPC客户端访问.通讯簿服务和公用文件夹连接配置静态RPC端口 很多企业的邮件服务器都采用了微软的Exchange,而Exchange的客户端访问服务通过动态RPC端口来实 ...
- 【Java——网络编程基础之客户端服务器连接】
网络编程 1.1软件结构 1.2 网络通信协议 1.3 协议分类 1.4网络编程三要素 协议 IP地址 端口号 TCP通信程序 2.1 概述 2.2 Socket类 构造方法 成员方法 2.3 Ser ...
- C# OPC客户端访问讯饶OPC服务器访问SunFull.X2OPC.1 报错
问题 C# OPCDA客户端访问,连接出错和连接数量出错 分析 主要原因权限和身份验证原因导致 操作 DCOM权限设置 打开DCOM 验证级别 添加Everyone
- 网页版怎么连接tcp服务器,请教怎么做一个tcp客户端访问网页
请问如何做一个tcp客户端访问网页 本帖最后由 oXiFangShiBai 于 2013-02-01 10:28:15 编辑 使用tcp协议,来访问网页,这样主要是做一个长连接 我的实现思路是: 1. ...
- 同一块网络芯片的多个SOCKET,可以同时设置成客户端去连接电脑服务器的一个端口吗,怎么实现?
解决方案: 当然可以,WIZnet每款网络协议芯片都可以支持多个SOCKET同时工作,只需将芯片内每个SOCKET设置成不同端口号,分别设置成客户端去连接服务器就行, 前提是服务器的上位机软件需支持多 ...
- Socket简介及客户端服务器连接实例
注: 在客户端游戏开发中,使用HTTP进行网络通信的比较少,一般使用的都是Socket进行通信.而HTTP一般用于网页或者网页游戏. [Socket简介] 1.套接字(socket)概念 套接字(s ...
- 被调用的对象已与其客户端断开连接 win10_【完整案例】基于Socket开发TCP传输客户端...
1 程序界面设计 TCP客户端在上位机开发中应用很广,大多数情况下,上位机软件都是作为一个TCP客户端来与PLC或其他服务器进行通信的.TCP客户端的主要功能就是连接服务器.发送数据.接收数据.断开连 ...
最新文章
- 纯数学教程 Page 203 例XLI (1)
- C++ 重定位输入输出
- 从IBM“廉政”说企业内控
- malloc动态分配多维数组
- Java设计模式百例(番外) - Java的clone
- VS2017编译可在Win2000上运行的程序
- 在JavaScript中遭遇级联表达式陷阱
- C#字符串:转数组、数字
- curl shell 失败_linux – curl命令不在bash中通过shell脚本执行
- 牛人三个月内花不到 5000 美元拿到 CS 学位
- tomcat遇到jre\lib\ext\localedata.pack 时出错
- JDK中的BitMap实现之BitSet源码分析
- virtualbox 菜单栏不见了---如何调出来
- string与int之间转换
- matlab加速度转化为位移,加速度转换成位移的matlab代码及说明
- 玲听预告 | 蚂蚁金服布局区块链的底层心法是什么?
- 无需Avatarify 无需剪辑工具 一键生成多人版 “蚂蚁呀嘿“视频
- Android封装sdk页面为h5,Android/H5混合 SDK 集成文档
- 关于节日文化的HTML网页设计-----二十四节气
- c++实验3—定期存款利息计算器