Maison > php教程 > PHP开发 > Requête PHP Exemple de test d'interface Socket

Requête PHP Exemple de test d'interface Socket

高洛峰
Libérer: 2016-12-22 10:03:40
original
1319 Les gens l'ont consulté

Utilisez php pour lire les données de l'interface socket, transmettez la méthode de requête et les paramètres de requête via php, et obtenez le résultat de retour

Fichier PHP :

<?php
class Test{
  const IP=&#39;127.0.0.1&#39;;
  const port=10003;
  public static function main(){
    header("Content-type:text/html;Charset=UTF-8");
    $socket=new Test();
    $result=$socket->connSocket("getmaillist\r\n{&#39;id&#39;:2}\r\n");
    echo $result;
  }
  private function connSocket($str){
    $socket = socket_create(AF_INET,SOCK_STREAM,SOL_TCP);
    $res=@socket_connect($socket,self::IP,self::port);
    if(!$res){
      return;
    }
    socket_write($socket,$str);
    $result="";
    while($data = socket_read($socket,1024)){
      $result.=$data;
    }
    socket_close($socket);
    return $result;
  }
}
Test::main();
Copier après la connexion

Serveur Java Socket :

import java.io.InputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
 
public class Test {
  public static void main(String[] args) throws Exception {
    ServerSocket serverSocket = new ServerSocket(10003);
 
    while (true) {
      Socket socket = serverSocket.accept();
 
      InputStream is = socket.getInputStream();
      byte[] b = new byte[1024];
      int len = is.read(b);
      String inputString = new String(b, 0, len);
      PrintWriter pw=new PrintWriter(socket.getOutputStream(),true);
      String result="";
       
      //处理发来的数据
      if(inputString.contains("\r\n")){
        String[] params=inputString.split("\r\n");
        if(params[0].equals("getmaillist")){
          String maillist=getmaillist();
          result="请求方法:"+params[0]+",请求参数:"+params[1]+",请求结果:"+maillist;
        }else{
          result="非法参数2";
        }
      }else{
        result="非法参数1";
      }
       
      pw.println(result);
      socket.close();
    }
  }
  public static String getmaillist(){
    return "中国上海/2015年7月28日——服务于中国及全球华人社群的领先在线媒体公司新浪公司(Nasdaq GS: SINA)定于美国当地时间2016年8月8日周一股市收盘后公布截至2016年6月30日的2016第二季度未经审计的财务报告。随后,新浪管理团队将于美国东部时间晚10点10分召开电话会议,通报公司的财务和经营状况。";
  }
}
Copier après la connexion

Effet :

Requête PHP Exemple de test dinterface Socket

L'exemple de test d'interface Socket de requête PHP ci-dessus est tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence et j'espère que vous soutiendrez le site Web PHP chinois.

Pour plus d'articles liés aux exemples de tests d'interface de socket de requête PHP, veuillez faire attention au site Web PHP chinois !


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal