PHP does the port monitor

xiaoxiao2021-03-06  70

server

// server

// Set the error handling

Error_Reporting (E_ALL);

// Set the run time

Set_time_limit (0);

//

OB_IMPLICIT_FLUSH ();

$ IP = "127.0.0.1"; // IP address

$ port = 1000; // port number

$ socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP); // Create a Socket

IF ($ socket)

echo "socket_create () successed! / n";

Else

Echo "socket_create () failed:". Socket_stroRROR ($ socket). "/ n";

$ bind = socket_bind ($ socket, $ IP, $ port); // Bind a socket

IF ($ bind)

echo "socket_bind () successed! / n";

Else

echo "socket_bind () failed:". Socket_stroRROR ($ bind). "/ n";

$ listen = socket_listen ($ socket); // Listen to Socket

IF ($ listen)

echo "socket_listen () successed! / n";

Else

echo "socket_listen () failed:". Socket_strerror ($ listen). "/ n";

While (True)

{

$ msg = socket_accept ($ socket); // Accept a socket

IF ($ msg)

{

echo "socket_accept () failed:". Socket_strerror ($ msg). "/ n";

Break;

}

$ Welcome = "Welcome to PHP Server! / N";

Socket_Write ($ MSG, $ Welcome, Strlen ($ Welcome);

While (True)

{

$ comMMAND = Strtoupper (Trim (Socket_read ($ MSG, 1024)))

IF (! $ commman)

Break;

Switch ($ Command)

{

Case "Hello":

$ Writer = "Hello Everybody!";

Break;

Case "quit":

$ Writer = "BYE-BYE";

Break;

Case "Help":

$ Writer = "Hello / Tquit / Thelp";

Break;

DEFAULT:

$ Writer = "Error Command!";

}

Socket_Write ($ MSG, $ Writer, Strlen ($ Writer);

IF ($ comMMAND == "quit")

Break;

}

Socket_close ($ msg);

}

Socket_close ($ socket); // Close Socket

?>

Client

// client // set error handling

Error_Reporting (E_ALL);

// Set processing time

Set_time_limit (0);

$ IP = "127.0.0.1"; // IP address

$ port = 1000; // port number

$ socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP); // Create a Socket

IF ($ socket)

echo "socket_create () successed! / n";

Else

Echo "socket_create () failed:". Socket_stroRROR ($ socket). "/ n";

$ conn = Socket_connect ($ socket, $ ip, $ port); // Establish a socket connection

IF ($ conn)

Echo "Success to Connection! [". $ IP. ":": ". $ port."] / n ";

Else

Echo "socket_connect () failed:". Socket_strerror ($ conn). "/ n";

Echo Socket_read ($ socket, 1024);

$ stdin = fopen ('php: // stdin', 'r');

While (True)

{

$ comMMAND = Trim (FGETS ($ STDIN, 1024));

Socket_Write ($ socket, $ command, strlen ($ commit));

$ msg = trim (Socket_read ($ socket, 1024));

Echo $ msg. "/ n";

IF ($ msg == "BYE-BYE")

Break;

}

Fclose ($ stdin);

Socket_close ($ socket);

?>

转载请注明原文地址:https://www.9cbs.com/read-87822.html

New Post(0)