Advertisement
Guest User

Socket

a guest
Jan 9th, 2012
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 0.73 KB | None | 0 0
  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.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement