PHP Socket 编程

让我们以一个简单的例子开始---一个接收输入字符串,处理并返回这个字符串到客户端的TCP服务.下面是相应的代码:

PHP 代码:

--------------------------------------------------------------------------------

<?
// 设置一些基本的变量
$host = "192.168.1.99";
$port = 1234;
// 设置超时时间
set_time_limit(0);
// 创建一个Socket
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create
socket\n");
//绑定Socket到端口
$result = socket_bind($socket, $host, $port) or die("Could not bind to
socket\n");
// 开始监听链接
$result = socket_listen($socket, 3) or die("Could not set up socket
listener\n");
// accept incoming connections
// 另一个Socket来处理通信
$spawn = socket_accept($socket) or die("Could not accept incoming
connection\n");
// 获得客户端的输入
$input = socket_read($spawn, 1024) or die("Could not read input\n");
// 清空输入字符串
$input = trim($input);
//处理客户端输入并返回结果
$output = strrev($input) . "\n";
socket_write($spawn, $output, strlen ($output)) or die("Could not write
output\n");
// 关闭sockets
socket_close($spawn);
socket_close($socket);
?>

转载于:https://www.cnblogs.com/-oop/archive/2010/04/09/1708066.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器可否替代手机芯片,基于ARM的处理器能取代桌面处理器吗?

科技的发展速度太快了&#xff0c;从手机进入智能时代开始&#xff0c;手机处理器的速度也越来越快了&#xff0c;以前人们办公都是在电脑端进行的&#xff0c;随着手机的功能越来越多&#xff0c;手机处理器速度越来越快&#xff0c;已经有一小部分的工作可以在手机上完成了。…

tr闭包_嵌套函数及闭包

这篇文章其实是要讲闭包的一些初级应用&#xff0c;但是为了将闭包&#xff0c;我们还是从嵌套函数开始说吧&#xff0c;纵使所有的JavaScript函数都可以说是闭包&#xff0c;但是只有当一个嵌套函数被导出到它所定义的作用域之外时&#xff0c;这种闭包才是有趣的。【嵌套函数…

转]从一个男人关注的事情上 可以看出他的修养和抱负

一、拥有自信和风度 男人到了二十几岁后&#xff0c;就要开始学着用心去经营自己了&#xff0c;它体现在自己的思想与涵养上。自信是一个男人最重要的品质&#xff0c;自信的男人就你像一只在暴风雨中战斗的海鸥。海鸥所要说的只有一句话“让暴风雨来的再猛烈些吧”&#xff0…

python歌星大奖赛_在歌星大奖赛中,有10个评委为参赛选手打分,分数为1到100分。...

/*********************************************************************************** 功能描述&#xff1a; 求一个比赛的选手成绩** 作 者&#xff1a; 郭强生** 修改日期&#xff1a; 2012-08-06** 备 注&#xff1a; 在歌星大奖赛中&#xff0c;有10…

投资最重要的事读后感_《投资最重要的事》读书笔记

《投资最重要的事》读书笔记《投资最重要的事》作者详细阐述了“第二层次思维”、价格/价值关系、耐心等待机会、以及多元化投资等概念&#xff0c;对自身的决策以及偶尔的失误做出了坦诚的评价&#xff0c;为读者进行批判性思考、风险评估、建立投资策略提供了宝贵的经验教训&…

VS2010 RTM

Visual Studio 2010 已经RTM并且在Msdn subscription提供了下载和试用版本&#xff0c;为了迎接这一产品&#xff0c;我在这个周末格式化了系统分区重新安装了Windows 7 x64。 在最新的Visual Assist配合下&#xff0c;整个IDE较之之前的版本更加舒适。 比如&#xff0c;选中的…

python搭建分布式集群_利用python的dask搭建分布式集群

一、dask介绍优势&#xff1a;dask内部自动实现了分布式调度、无需用户自行编写复杂的调度逻辑和程序&#xff1b;通过调用简单的方法就可以进行分布式计算、并支持部分模型的并行化处理&#xff1b;内部实现的分布式算法&#xff1a;xgboost、LR、sklearn的部分方法等用一句话…

【J2EE设计模式】模型-视图-控制器模式(MVC模式)

MVC将用户接口分割成3个截然不同的部分。 一、视图 状态无关的组件&#xff0c;从模型中读取数据&#xff0c;简单的把模型中的值转化为对客户端有用的格式。 二、控制器 协调请求处理&#xff0c;将用户输入转变为模型更新和视图 。它就像一个主管&#xff0c;首先策划要做哪些…

HttpURLConnection简单用法

HttpURLConnection为javaAPI提供的一种Rest访问的方式。其支持对Post,Delete,Get,Put等方式的访问。 以下为对于HttpURLConnection对Post等方式访问的一段代码。 view plaincopy to clipboardprint? 1. package com.sw.study.urlConnection; 2. 3. import java.io.Bu…

天勤python_天勤量化策略库:菲阿里四价策略

文章策略均基于开源免费&#xff0c;简单强大的Python量化开发包——天勤量化(TqSdk)实现菲阿里四价策略故事在2000年7月&#xff0c;日本举办了首次“ROBBINS-TAICOM期货冠军比赛”&#xff0c;总共比赛历时半年。从第一周起&#xff0c;一位名叫Fairy(菲阿里)的先生便位居首位…

个人宣传画

转载于:https://www.cnblogs.com/yellowyu/archive/2010/04/19/1715735.html

touch 连续创建文件_touch命令 – 创建文件

touch命令有两个功能&#xff1a;一是创建新的空文件&#xff0c;二是改变已有文件的时间戳属性。touch命令会根据当前的系统时间更新指定文件的访问时间和修改时间。如果文件不存在&#xff0c;将会创建新的空文件&#xff0c;除非指定了”-c”或”-h”选项。注意&#xff1a;…

转载CTF

1.MD5 compare漏洞 PHP在处理哈希字符串时&#xff0c;会利用”!”或””来对哈希值进行比较&#xff0c;它把每一个以”0E”开头的哈希值都解释为0&#xff0c;所以如果两个不同的密码经过哈希以后&#xff0c;其哈希值都是以”0E”开头的&#xff0c;那么PHP将会认为他们相同…

java jtable刷新_java-单击按钮更新JTable

I have searched on stackoverflow and a couple of people have said to use that method.不,您不应在TableModel本身的上下文之外调用任何fireTableXxx方法,否则人们会认为这完全是错误的,将来会给您带来麻烦.从代码的外观来看,什么都没有改变.如果您已根据上一个问题中提供的…

韩寒说世博会

先声明:我不是韩寒的什么粉丝,也不太关注这些作家的事情,希望这些文字能让你想到一些什么东西...........转载自:http://tieba.baidu.com/f?kz752703402 最近&#xff0c;老是有媒体要关于世博会采访我&#xff0c;我觉得很为难&#xff0c;如果我赞美他吧&#xff0c;估计我良…

windows系统下的云服务器部署tomcat

在环境配置没问题的基础下&#xff0c;如果启动服务器缺无法打开默认页面&#xff0c;则很有可能说明是你的端口问题&#xff1a; 这里我的解决方法&#xff1a; 控制面板-->系统和安全-->Windows 防火墙-->高级设置-->入站规则-->新建规则 依次选择端口-->…

营销公式

世界上最难得事情就是将别人的钱放到自己口袋。 要想别人给钱&#xff0c;首先要有控制别人的能力&#xff0c;例子&#xff0c;奴隶主能控制奴隶。 权力是来钱的关键因素。也就是说应该增加别人对你的依赖。 人们的弱点&#xff1a; 1.只看到短期利益&#xff0c;往往忽视长期…

centos修改磁盘uuid_Centos更换损坏硬盘UUID改变导致系统不能正常启动处理

Centos更换损坏硬盘UUID改变导致系统不能正常启动处理一、适用场景本文档的适用场景为&#xff0c;更换硬盘导致系统启动时因UUID不同&#xff0c;导致挂载文件读取失败&#xff0c;系统不能正常启动&#xff0c;同时本文档的处理方法也适用于fstab文件配置出错导致无法启动系统…

git远程仓库上传及本地仓库创建

第一步&#xff1a;我们需要先创建一个本地的版本库&#xff08;其实也就是一个文件夹&#xff09;。 你可以直接右击新建文件夹&#xff0c;也可以右击打开Git bash命令行窗口通过命令来创建。 现在我通过命令行在桌面新建一个TEST文件夹&#xff08;你也可以在其他任何地方创…

强大js web甘特图制作之甘特图组件和数据对象

引用CSS和JS 使用EdoGantt是一件简单轻松的事&#xff0c;首先我们在HTML页面内引用CSS和JS&#xff1a; <!--edo css--><link href"http://www.cnblogs.com/scripts/edo/res/css/edo-all.css" rel"stylesheet" type"text/css" />&l…