• 《php简单的php小服务器》可惜主机屋空间不允许使用某些函数。只能换别的了。


    //server.php
    
    <? 
    	// 设置一些基本的变量 
    	$host = "localhost"; 
    	$port = 1111; 
    	// 设置超时时间 
    	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 
    	file_put_contents("../log/server.log", "测试连接1\r\n", FILE_APPEND);
    	
    	for ($i = 0; $i < 3; $i++){
    		// 另一个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");
    		file_put_contents("../log/server.log", "2 客户端发的数据是".$input."\r\n", FILE_APPEND);
    		
    		// 向客户端发送数据
    		$input = trim($input);
    		//处理客户端输入并返回结果
    		$output = strrev($input)."\n";
    		socket_write($spawn, $output, strlen ($output)) or die("Could not write output\n");
    	}
    	
    	file_put_contents("../log/server.log", "测试连接3\r\n", FILE_APPEND);
    	
    	// 关闭sockets 
    	socket_close($spawn); 
    	socket_close($socket); 
    
    //client.php
    
    <?php
    
    	$port = 1111;
    	
    	$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    	socket_connect($sock, '127.0.0.1', $port);
    	
    	$line = "heihei";
    	socket_write ($sock, $line, strlen ($line));
    	
    	$input = socket_read($sock, 1024) or die("Could not read input\n");
    	file_put_contents("../log/server.log", "服务器发来的数据是".$input."\r\n", FILE_APPEND);
    	
    	echo "服务器发来的数据是".$input;
    	socket_close($sock);
    	
    	
    



  • 相关阅读:
    27. 移除元素
    LeetCode---9.回文数
    PAT 1098 Insertion or Heap Sort (25)
    PAT 1146 Topological Order
    PAT 1147 Heaps(30 分)
    数据结构 二分查找1
    数据结构 树
    PAT 1126 Eulerian Path
    PAT 1111 Online Map (30)
    PAT 1072 Gas Station (30)
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3078559.html
Copyright © 2020-2023  润新知