首頁 > Java > java教程 > 主體

java与php通过socket通信的实例教程

PHP中文网
發布: 2017-05-27 09:38:26
原創
2272 人瀏覽過

demo实现的简单功能是,接受PHP端写入的字符串,然后原样返回给输出端。代码如下:

代码如下:

import java.io.*; 
import java.net.*; 
public 
class
 Server { 
public 
static
 void 
main
(
String
[] args) throws IO
Exception
{ 
  System.out.
print
ln("Server started !\n"); 
  ServerSocket server=
new
 ServerSocket(5678); 
  
while
 (true){ 
                Socket client=server.accept(); 
                System.out.println("client coming!\n"); 
                PrintWriter printer = new PrintWriter(client.getOutputStream()); 
                BufferedReader reader = new BufferedReader(new InputStreamReader(client.getInputStream())); 
                String  m = reader.
readLine
(); 
                System.out.println("get infomation " + m + "\n from " + client.getInetAddress().toString()); 
                printer.println(m); 
                printer.
flush
(); 
                printer.close(); 
                printer.close(); 
                client.close(); 
                System.out.println("client leaving!\n"); 
              } 
        } 
}
登入後複製

运行起来,以后该java程序将监听5678端口,当接收到消息以后,将接收的消息原样返回给客户端……
PHP的代码如下:

代码如下:

<?php 
    $socket = socket_create ( AF_INET, SOCK_STREAM, SOL_TCP ) or die ( &#39;could not create socket&#39; ); 
    $connect = socket_connect ( $socket, &#39;127.0.0.1&#39;, 5678 ); 
    //向服务端发送数据 
    socket_write ( $socket, &#39;Hello&#39; . "\n" ); 
    //接受服务端返回数据 
    $str = socket_read ( $socket, 1024, PHP_NORMAL_READ ); 
    
echo
 $str; 
    //关闭 
    socket_close($socket);
登入後複製

PHP程序连接本机的5678端口,写入 Hello,然后读取返回的数据……将返回的数据,输出到浏览器……
先运行起java的服务端,然后用浏览器访问PHP页面,将看到从服务器端返回的Hello

【相关推荐】

1. 详解java 中valueOf方法实例

2. 分享java中处理socket通信过程中粘包情况的实例代码

3. Java 实例 - ServerSocket 和 Socket 通信实例

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!