首页 » SEO优化 » phpselect日期技巧_68php select案例

phpselect日期技巧_68php select案例

访客 2024-12-01 0

扫一扫用手机浏览

文章目录 [+]

socket_select( array &$read, array &$write, array &$except, int $tv_sec[, int $tv_usec = 0] )

个中,

phpselect日期技巧_68php select案例

$read存放可读的socket凑集,即遍历那些socket读缓冲区不为空

phpselect日期技巧_68php select案例
(图片来自网络侵删)

$write存放可写socket凑集,即遍历哪些socket写缓冲区为空

$except打消不进行遍历监听的socket凑集

$tv_sec韶光,单位为秒

$tv_usec韶光,单位为奇妙

默认情形,socket_select根据设置的($tv_sec+$tv_usec)进行壅塞,如都为零,则不壅塞立即返回

2、案例

创建一个tcp做事端.再利用telnet作为客户端进行测试

2.1、源码

<?php

/

Copyright (C) Iamasb

@project : 3、workerman干系知识点

@explain : select函数利用

@filename : 33、select函数利用.php

@author : xiaobei

/

// 创建tcp

if (!($resource = socket_create(AF_INET,SOCK_STREAM,SOL_TCP))) {

echo \"大众socket create is error\"大众;

exit();

}

// 绑定当前主机和端口

if (!socket_bind($resource,'0.0.0.0','1234')) {

echo \"大众socket bind is error\"大众;

exit();

}

// 启动监听

if (!socket_listen($resource)) {

echo \公众socket listen is error\"大众;

exit();

}

// 设置端口复用

if (!socket_set_option($resource, SOL_SOCKET, SO_REUSEADDR, 1)) {

echo 'Unable to set option on socket: '. socket_strerror(socket_last_error()) . PHP_EOL;

exit;

}

$read[] = $resource;

$write = NULL;

$except = NULL;

$start = \"大众welcome to!\r\n\"大众;

$end = \公众good bye \r\n\"大众;

while (true) {

$rst = $read;

socket_select($rst,$write,$except,0);

if (count($rst)) {

foreach ($rst as $value) {

// 判断是否是主socket,还是子socket

if ($value === $resource) {

$client = socket_accept($resource);

socket_write($client,$start,strlen($start));

$read[] = $client;

} else {

$str = trim(socket_read($value,1024));

if ($str == \公众quit\公众) {

socket_write($value,$end,strlen($end));

socket_close($value);

$key = array_search($value,$read);

unset($read[$key]);

echo \"大众client->\"大众,$key,\"大众--> close.\公众;

}

echo \"大众receive-> \"大众,$str,PHP_EOL;

}

}

}

}

2.2、测试

启动tcp做事端telnet进行连接

tcp做事端

3、总结

由上面的运行结果,可以看出,当某个telnet发起数据交互时,做事端都能够及时进行处理。
而不用等到一个socket处理完毕后,再进行。
这样大大提升了通信效率

标签:

相关文章

临泾镇,历史与现代交织的乡村振兴典范

临泾镇,位于我国西北部,地处黄河上游,是一个历史悠久、文化底蕴深厚的古镇。近年来,随着乡村振兴战略的深入推进,临泾镇在传承优秀传统...

SEO优化 2024-12-23 阅读0 评论0

中语系,传承文化,培育英才

中语系,全称为中国语言文学系,是我国高等教育体系中的重要组成部分。自成立以来,中语系始终秉持“传承文化,培育英才”的宗旨,致力于培...

SEO优化 2024-12-23 阅读0 评论0

中国男性,砥砺前行,谱写时代新篇章

自古以来,中国男性在历史长河中扮演着举足轻重的角色。从农耕文明到现代社会,中国男性始终肩负着家庭、国家和社会的重任。在新时代背景下...

SEO优化 2024-12-23 阅读0 评论0