php中关于socket的系列函数总结


Posted in PHP onMay 18, 2015

本文列举了所有关于PHP语言中使用socket相关服务的一些函数。注意使用如下函数之前,你需要确保你的socket已打开,如果你没有打开,请编辑你的php.ini文件,去掉下面这行前面的注释(分号):

extension=php_sockets.dll

如果你无法去掉注释,那么请使用下面的代码来加载扩展库:
<?php

if(!extension_loaded('sockets')){

 if(strtoupper(substr(PHP_OS,3))=="WIN"){

  dl('php_sockets.dll');

 }else{

  dl('sockets.so');

 }

}

如果你不知道你的socket是否打开,那么你可以使用phpinfo()函数来确定socket是否打开。你通过查看phpinfo信息了解socket是否打开。

php socket 相关函数如下:

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()    写数据到分散/聚合数组
PHP 相关文章推荐
PHP系统流量分析的程序
Oct 09 PHP
一个MYSQL操作类
Nov 16 PHP
jq的get传参数在utf-8中乱码问题的解决php版
Jul 23 PHP
linux环境apache多端口配置虚拟主机的方法深入介绍
Jun 09 PHP
ThinkPHP中U方法的使用浅析
Jun 13 PHP
PHP中一些可以替代正则表达式函数的字符串操作函数
Nov 17 PHP
php使用Jpgraph绘制饼状图的方法
Jun 10 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
Sep 25 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
Jun 21 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
Jun 28 PHP
php精度计算的问题解析
Jun 21 PHP
php简单socket服务器客户端代码实例
May 18 #PHP
php实现粘贴截图并完成上传功能
May 17 #PHP
php获取json数据所有的节点路径
May 17 #PHP
php中memcache 基本操作实例
May 17 #PHP
PHP实现过滤各种HTML标签
May 17 #PHP
支持中文的PHP按字符串长度分割成数组代码
May 17 #PHP
php 批量查询搜狗sogou代码分享
May 17 #PHP
You might like
咖啡的化学
2021/03/03 咖啡文化
解析PHP无限级分类方法及代码
2013/06/21 PHP
php清空(删除)指定目录下的文件,不删除目录文件夹的实现代码
2014/09/04 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
PHP实现简单的模板引擎功能示例
2017/09/02 PHP
[Web]防止用户复制页面内容和另存页面的方法
2009/02/06 Javascript
JavaScript Event学习第五章 高级事件注册模型
2010/02/07 Javascript
js 编写规范
2010/03/03 Javascript
js简单的表格添加行和删除行操作示例
2014/03/31 Javascript
JavaScript中的6种运算符总结
2014/10/16 Javascript
javascript排序函数实现数字排序
2015/06/26 Javascript
Jquery attr()方法 属性赋值和属性获取详解
2016/04/15 Javascript
Angular1.x复杂指令实例详解
2017/03/01 Javascript
微信小程序 空白页重定向解决办法
2017/06/27 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
JS实现简易留言板(节点操作)
2020/03/16 Javascript
javascript实现点击按钮切换轮播图功能
2020/09/23 Javascript
仅用50行代码实现一个Python编写的计算器的教程
2015/04/17 Python
详解Python的Flask框架中的signals信号机制
2016/06/13 Python
WxPython建立批量录入框窗口
2019/02/27 Python
开启Django博客的RSS功能的实现方法
2020/02/17 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
2020/03/10 Python
python图片剪裁代码(图片按四个点坐标剪裁)
2020/03/10 Python
Python astype(np.float)函数使用方法解析
2020/06/08 Python
如何解决安装python3.6.1失败
2020/07/01 Python
python怎么对数字进行过滤
2020/07/05 Python
西尔斯百货官网:Sears
2016/09/06 全球购物
旅游管理毕业生自荐书
2014/02/02 职场文书
物业总经理岗位职责
2014/02/28 职场文书
主题班会演讲稿
2014/05/22 职场文书
公司2014年度工作总结
2014/12/10 职场文书
个人总结怎么写
2015/02/26 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
http通过StreamingHttpResponse完成连续的数据传输长链接方式
2022/02/12 Python
Java后端 Dubbo retries 超时重试机制的解决方案
2022/04/14 Java/Android