title: what is socket in php? And at what condition i should go for socket connection?
body: <p>I have already gone through some tutorials for socket but i couldn't get what it does. I want to know what sockets do and why is it used. This is the code I have referred.</p>
  
  <pre><code>client.php
  &lt;?php
  $host    = "localhost";
  $port    = 1024;
  $message = "Hello Server";
  echo "Message To server :".$message;
  // create socket
  $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create              socket\n");
  // connect to server
  $result = socket_connect($socket, $host, $port) or die("Could not connect to  server\n");  
  // send string to server
  socket_write($socket, $message, strlen($message)) or die("Could not send data to server\n");
  // get server response
  $result = socket_read ($socket, 1024) or die("Could not read server response\n");
  echo "Reply From Server  :".$result;
  // close socket
  socket_close($socket);
  ?&gt;
  
  server.php
  &lt;?php
  // set some variables
  $host = "localhost";
  $port = 1024;
  // don't timeout!
  set_time_limit(0);
  // create socket
  $socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
  // bind socket to port
  $result = socket_bind($socket, $host, $port) or die("Could not bind to socket\n");
  // start listening for connections
  $result = socket_listen($socket, 3) or die("Could not set up socket listener\n");
  
  // accept incoming connections
  // spawn another socket to handle communication
  $spawn = socket_accept($socket) or die("Could not accept incoming connection\n");
  // read client input
  $input = socket_read($spawn, 1024) or die("Could not read input\n");
  // clean up input string
  $input = trim($input);
  echo "Client Message : ".$input;
  // reverse client input and send back
  $output = strrev($input) . "\n";
  socket_write($spawn, $output, strlen ($output)) or die("Could not write  output\n");
  // close sockets
  socket_close($spawn);
  socket_close($socket);
  ?&gt;
  </code></pre>
  
  <p>So I couldn't get the idea of where to enter the server code and client code. Usually we write server code on what it should do while getting user input.So i am extremely confused about this. Can anyone help me? Thanks in advance</p>