PHP向socket服务器收发数据的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-08 22:27:58 浏览: 评论:0
这篇文章主要介绍了PHP向socket服务器收发数据的方法,分析了socket收发数据的方法,并介绍了socket常用函数,需要的朋友可以参考下
本文实例讲述了PHP向socket服务器收发数据的方法。分享给大家供大家参考。具体如下:
在PHP要向其它程序发送数据,则需要使用到php的socket功能来实例了,下面我们简单看一个实例,代码如下:
- /*socket收发数据
- @host(string) socket服务器IP
- @post(int) 端口
- @str(string) 要发送的数据
- @back 1|0 socket端是否有数据返回
- 返回true|false|服务端数据
- */
- function sendSocketMsg($host,$port,$str,$back=0){
- $socket = socket_create(AF_INET,SOCK_STREAM,0);
- if ($socket < 0) return false;
- $result = @socket_connect($socket,$host,$port);
- if ($result == false)return false;
- socket_write($socket,$str,strlen($str));
- if($back!=0){
- $input = socket_read($socket,1024);
- socket_close ($socket);
- return $input;
- }else{
- socket_close ($socket);
- return true;
- }
- }
socker_read的第二个参数用以指定读入的字节数,你可以通过它来限制从客户端获取数据的大小.
sock函数介绍
函数名 描述
socket_accept() 接受一个Socket连接
socket_bind() 把socket绑定在一个IP地址和端口上
socket_clear_error() 清除socket的错误或者最后的错误代码
socket_close() 关闭一个socket资源
socket_connect() 开始一个socket连接
socket_create_listen() 在指定端口打开一个socket监听
socket_create_pair() 产生一对没有区别的socket到一个数组里
socket_create() 产生一个socket,相当于产生一个socket的数据结构
socket_get_option() 获取socket选项
socket_getpeername() 获取远程类似主机的ip地址
socket_getsockname() 获取本地socket的ip地址
socket_iovec_add() 添加一个新的向量到一个分散/聚合的数组
socket_iovec_alloc() 这个函数创建一个能够发送接收读写的iovec数据结构
socket_iovec_delete() 删除一个已经分配的iovec
socket_iovec_fetch() 返回指定的iovec资源的数据
socket_iovec_free() 释放一个iovec资源
socket_iovec_set() 设置iovec的数据新值
socket_last_error() 获取当前socket的最后错误代码
socket_listen() 监听由指定socket的所有连接
socket_read() 读取指定长度的数据
socket_readv() 读取从分散/聚合数组过来的数据
socket_recv() 从socket里结束数据到缓存
socket_recvfrom() 接受数据从指定的socket,如果没有指定则默认当前socket
socket_recvmsg() 从iovec里接受消息
socket_select() 多路选择
socket_send() 这个函数发送数据到已连接的socket
socket_sendmsg() 发送消息到socket
socket_sendto() 发送消息到指定地址的socket
socket_set_block() 在socket里设置为块模式
socket_set_nonblock() socket里设置为非块模式
socket_set_option() 设置socket选项
socket_shutdown() 这个函数允许你关闭读、写、或者指定的socket
socket_strerror() 返回指定错误号的详细错误
socket_write() 写数据到socket缓存
socket_writev() 写数据到分散/聚合数组
注意:socket_read函数会一直读取壳户端数据,直到遇见n,t或者字符,PHP脚本把这些字符看做是输入的结束符.
希望本文所述对大家的php程序设计有所帮助。
Tags: PHP收发数据 socket
- 上一篇:php内存缓存实现方法
- 下一篇:Symfony页面的基本创建实例详解
相关文章
- ·PHP中向socket服务器收发数据(2014-08-28)
- ·php socket讲解与实例(2013-12-09)
- ·PHP socket模拟POST请求实例(2014-01-18)
- ·php socket 使用smtp服务器发送邮件(2014-01-22)
- ·php中socket实现GET与POST异步提交数据(2014-06-16)
- ·php socket客户端和服务端互相通讯实例(2014-06-19)
- ·PHP利用socket模拟post之fsockopen发送数据(2014-09-05)
- ·php Socket 创建 监听等实例(2014-09-09)
- ·php socket通信机制实例说明与代码(2014-09-09)
- ·PHP不支持socket_connect函数开启步骤(2014-09-10)
- ·php基于Socket实现多线程开发教程(2015-04-15)
- ·PHP聊天室_WebSocket技术实战(2016-08-25)
- ·php中socket服务的模型下的编程方式(同步和异步)(2018-09-18)
- ·php socket服务的模型以及实现 多进程IO复用libevent(2018-09-18)
- ·php实现socket推送技术的示例(2018-11-04)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)