본문 바로가기

Dev/PHP

PHP 소켓통신

PHP 소켓통신을 하려면 php.ini 설정파일에서 extension=php_sockets.dll 주석을 없애줘야한다. (그리고 아파치 재부팅)


클라이언트에서 서버로 메세지를 보낼때.


socket_write에서 전송할 메세지를 보낼때, 마지막에 \n을 붙여준다.

이 메세지의 전송이 끝났다는것을 의미한다.


define("_IP",    "1.223.109.212");
define("_PORT",  "9090");
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); // 소켓 생성
$con = socket_connect($socket, _IP, _PORT); // 소켓을 IP와 PORT에 결합
socket_write($socket, "msg\n"); // 소켓 메세지 전송
socket_close($socket); // 소켓 닫기

if ($socket === false) {
	echo "socket_create() 실패! 이유: " . socket_strerror(socket_last_error()) . "\n";
} else {
	echo "socket 성공적으로 생성.\n";
}

if ($con === false) {
	echo "socket_connect() 실패.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
	echo "다음 주소로 연결 성공 : $address.\n";
}


참조: http://www.phpschool.com/class/php_multi_socket_server.html

연결확인: http://blog.naver.com/PostView.nhn?blogId=lunacastech&logNo=140166729096

'Dev > PHP' 카테고리의 다른 글

pChart 안나올때  (0) 2013.04.16
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource 에러  (0) 2013.03.27
php.ini  (0) 2013.03.04
PHP 출력 내용 엑셀로 저장  (0) 2013.02.19
xml에서 자바스크립트 사용  (0) 2013.01.30