Want more features on Pastebin? Sign Up, it's FREE!
Guest

Socket

By: a guest on Jan 9th, 2012  |  syntax: PHP  |  size: 0.73 KB  |  views: 27  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1.         function Query( $IP, $Port = 25565 )
  2.         {
  3.                 $Socket = Socket_Create( AF_INET, SOCK_STREAM, SOL_TCP );
  4.                 if( $Socket === FALSE || @Socket_Connect( $Socket, $IP, (int)$Port ) === FALSE )
  5.                 {
  6.                         return FALSE;
  7.                 }
  8.                
  9.                 Socket_Send( $Socket, "\xFE", 1, 0 );
  10.                 $Len = Socket_Recv( $Socket, $Data, 256, 0 );
  11.                 Socket_Close( $Socket );
  12.                
  13.                 if( $Len < 4 || $Data[ 0 ] != "\xFF" )
  14.                 {
  15.                         return FALSE;
  16.                 }
  17.                
  18.                 $Data = SubStr( $Data, 3 );
  19.                 $Data = iconv( 'UTF-16BE', 'UTF-8', $Data );
  20.                 $Data = Explode( "\xA7", $Data );
  21.                
  22.                 return Array(
  23.                         'HostName'   => SubStr( $Data[ 0 ], 0, -1 ),
  24.                         'Players'    => isset( $Data[ 1 ] ) ? IntVal( $Data[ 1 ] ) : 0,
  25.                         'MaxPlayers' => isset( $Data[ 2 ] ) ? IntVal( $Data[ 2 ] ) : 0
  26.                 );
  27.         }
clone this paste RAW Paste Data