2 sunnysunny2008 sunnysunny2008 于 2014.03.27 10:36 提问

php socket 客户端的多次通信

想用php做一个socket 客户端,可以实现一次连接,然后多次给服务端发消息。具体的想法是这样的:
做一个页面,这个页面上有个按钮和消息栏,点一下按钮就可以把消息栏的内容发送给服务端,再点一下再发送,而不需要重新连接,只是页面打开时跟服务端连接上。
这个要怎么实现呀?请各位大牛帮帮忙,小妹先谢过了。
附上socket类的代码。

<?php
/** 定义ip,和端口 */

define ( 'PHP_SOCKET_PORT', '6000' );
define ( 'PHP_SOCKET_HOST', '127.0.0.1' );
define ( 'PHP_SOCKET_START', '' );
define ( 'PHP_SOCKET_END', '' );
// socket class
class socket{
var $socket; //socket 句柄
var $sendflag = ">>>";
var $recvflag = "<<<";
var $response;
var $debug = 1;
function socket($hostname,$port){
$address = gethostbyname($hostname);
$this->socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
$result = socket_connect($this->socket,$address,$port);
if($this->debug == 1){
if ($result < 0) {
$result = "socket_connect() failed.\nReason: ($result) " . socket_strerror($result) . "
";
} else{
$result = "connect OK.
";
}
}

}
function sendmsg($msg){
socket_write($this->socket,$msg,strlen($msg));
$result = socket_read($this->socket,100);
$this->response = $result;
if($this->debug == 1){
printf("%s $msg
",$this->sendflag);
printf("%s $result
",$this->recvflag);
}
return $result;
}
function close(){
socket_close($this->socket);
}
}
?>

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
vb与php进行socket通信遇到的问题
error_reporting(E_ALL); set_time_limit(0); $port=8000; $ip="192.168.1.110"; $socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP); if($socket {echo "socket_create() failed: reason: ".socket_strer
Java中利用socket实现简单的服务端与客户端的通信(基础级)
在上一篇文章中,简单的介绍了java中入门级的socket编程,简单的实现了客户端像服务器端发送数据,服务器端将数据接收并显示在控制台,没有涉及多线程。上一篇文章的链接:Java中利用socket实现简单的服务端与客户端的通信(入门级) 这次,我们将上一节中的代码进行少许的更改,将服务器更改为多线程,使得服务器可以为多个客户端服务。 因为是服务器端实现的多线程,所以客户端的代码不用做任何更改,
网络编程二(套接字Socket、客户端和服务端通信问题)
在客户机/服务器工作模式中,在Server端,要准备接受多个Client端计算机的通信。为此,除用IP地址标识Internet上的计算机之外,另还引入端口号,用端口号标识正在Server端后台服务的线程。端口号与IP地址的组合称为网络套接字(socket)。 Java语言在实现C/S模式中,套接字分为两类: 在Server端,ServerSocket类支持底层的网络通信; 在Clie
服务端的通信socket号与客户端的通信socket号一致吗?---不一致
本文不阐述什么大问题, 仅仅做一个简单的验证:服务端的通信socket号与客户端的通信socket号不一致         下面, 我们看服务端程序: #include #include // winsock接口 #pragma comment(lib, "ws2_32.lib") // winsock实现 int main() { WORD wVersionRequested; /
socket实现广播和客户端到客户端的通信
通过Socket和多线程实现广播和客户端到客户端的通信,私聊时有离线消息。  1.服务器端  Java代码   package com.gjy.socket;         import java.io.BufferedReader;   import java.io.IOException;   import java.io.InputStreamReade
tcp通讯的方式并使用socket建立客户端与服务器的通信的过程
tcp是一种通讯方式,也叫做tcp协议,是用来规范socket数据交互的。 socket是用来做通讯的。通讯需要通讯双方的ip,socket。举例说两个人打电话,电话就相当于是socket,而打电话的人相当于ip。 socket是用来发送数据和接受数据的,为了确保双方能够正常通信,所以规定了tcp协议。 下面是一个java实现两个程序之间通信的例子:
linux socket 服务器与客户端多进程通信
linux socket 多进程 server 与 client 通信
计算机网络编程socket服务器与客户端通信
简单的安卓客户端与服务器端的socket通信
java 通过 socket 实现 服务器和客户端的通信 TCP
// JBulder 9.0下执行 package me; import java.net.* ;   //网络编程有关的类在此包 import java.io.* ;  //用到 输入输出流 public class JavaNet {   public static void main(String []args)   {      if(args.length>0)
C#服务端+C#客户端+android客户端,socket通信demo
压缩包中二个项目文件夹1.MySocketServer(C#服务端及客户端)2.MyTestsocket(android客户端)socket通信demo并未实现过多功能,主要演示通信,更多功能自己开发,哈哈!源码地址:...