PHP TCP 소켓 통신 예제 <CLIENT 부분>

· 13년 전 · 8865 · 2
실제 현장에서 써먹은 예제입니다. 상대쪽에서 특정한 바이트 나열값을 받으면 Request 를 다시 받는것인데요..
 
물론 서버쪽은 저희가 알리는 없고 ㅋ. 간단한건데 처음부터 하기가 귀찮으신분들을 위해 이렇게 올립니당 ㅋ
 
 
 
<?php
 //The Client
 error_reporting(E_ALL);
 
$address = "xxx.xxx.xxx.xxx";                                                 // 접속할 IP //
$port = xxxx;                                                                         // 접속할 PORT //
 
 $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); // TCP 통신용 소켓 생성 //
 if ($socket === false) {
     echo "socket_create() 실패! 이유: " . socket_strerror(socket_last_error()) . "\n";
  echo "<br>";
 } else {
     echo "socket 성공적으로 생성.\n";
     echo "<br>";
 }
 
echo "다음 IP '$address' 와 Port '$port' 으로 접속중...";
echo "<BR>";
$result = socket_connect($socket, $address, $port);           // 소켓 연결 및 $result에 접속값 지정 //
 if ($result === false) {
     echo "socket_connect() 실패.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
  echo "<br>";
 } else {
     echo "다음 주소로 연결 성공 : $address.\n";
  echo "<br>";
 }
$i = "xxxxxxxxxxxxxxxxx";  //보내고자 하는 전문 //
echo "서버로 보내는 전문 : $i|종료|.\n";

socket_write($socket, $i, strlen($i)); // 실제로 소켓으로 보내는 명령어 //
echo "<br>";    
$input = socket_read($socket, 1024) or die("Could not read from Socket\n");  // 소켓으로 부터 받은 REQUEST 정보를 $input에 지정 //
echo "<br>";
 
echo $input;  //REQUEST 정보 출력//
socket_close($socket);
 ?>
|

댓글 2개

유용하게 쓸수 있을거 같은데요 감사합니다 ^^
좋은 정보 감사합니다
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
13년 전 조회 2,127
13년 전 조회 2,054
13년 전 조회 3,747
13년 전 조회 2,140
13년 전 조회 2,092
13년 전 조회 2,923
13년 전 조회 2,860
13년 전 조회 2,228
13년 전 조회 1,897
13년 전 조회 2,749
13년 전 조회 2,168
13년 전 조회 2,551
13년 전 조회 2,075
13년 전 조회 2,369
13년 전 조회 2,077
13년 전 조회 2,041
13년 전 조회 1,873
13년 전 조회 3,137
13년 전 조회 2,120
13년 전 조회 2,903
13년 전 조회 2,097
13년 전 조회 1,987
13년 전 조회 1,909
13년 전 조회 2,303
13년 전 조회 2,075
13년 전 조회 2,012
13년 전 조회 2,084
13년 전 조회 2,678
13년 전 조회 2,177
13년 전 조회 2,619
13년 전 조회 5,570
13년 전 조회 2,310
13년 전 조회 3,742
13년 전 조회 2,540
13년 전 조회 2,903
13년 전 조회 1,968
13년 전 조회 2,011
13년 전 조회 7,186
13년 전 조회 2,296
13년 전 조회 2,323
13년 전 조회 6,143
13년 전 조회 2,951
13년 전 조회 3,771
13년 전 조회 3,151
13년 전 조회 2,376
13년 전 조회 2,322
13년 전 조회 2,246
13년 전 조회 1,930
13년 전 조회 2,331
13년 전 조회 8,866
13년 전 조회 4,419
13년 전 조회 2,176
13년 전 조회 3,106
13년 전 조회 3,281
13년 전 조회 5,812
13년 전 조회 2,115
13년 전 조회 3,446
13년 전 조회 1,964
13년 전 조회 2,392
13년 전 조회 2,288
13년 전 조회 1,845
13년 전 조회 1.2만
13년 전 조회 2,004
13년 전 조회 2,775
13년 전 조회 2,148
13년 전 조회 2,155
13년 전 조회 3,252
13년 전 조회 3,023
13년 전 조회 2,963
13년 전 조회 4,100
13년 전 조회 2,319
13년 전 조회 2,059
13년 전 조회 2,261
13년 전 조회 3,451
13년 전 조회 2,750
13년 전 조회 2,376
13년 전 조회 2,519
13년 전 조회 2,129
13년 전 조회 2,650
13년 전 조회 2,042
13년 전 조회 2,562
13년 전 조회 2,513
13년 전 조회 2,915
13년 전 조회 2,414
13년 전 조회 2,675
13년 전 조회 2,203
13년 전 조회 2,090
13년 전 조회 2,160
13년 전 조회 2,493
13년 전 조회 2,046
13년 전 조회 2,653
13년 전 조회 2,161
13년 전 조회 2,039
13년 전 조회 2,208
13년 전 조회 2,149
13년 전 조회 3,136
13년 전 조회 2,481
13년 전 조회 2,405
13년 전 조회 3,244
13년 전 조회 2,464