Bonjour à tous !
Voila, j'ai un petit problème avec une page php, je voudrais récupérer proprement plusieurs variables.
Je vous montre le code et je vous explique :
Code PHP :
<?
class Minequery {
public static function query($address, $port = 8000, $timeout = 5) {
$address = '88.182.196.189';
$query = array();
$beginning_time = microtime(true);
$socket = @fsockopen($address, $port, $errno, $errstr, $timeout);
if (!$socket) {
// Could not establish a connection to the server.
return false;
}
$end_time = microtime(true);
fwrite($socket, "QUERY\n");
$response = "";
while(!feof($socket)) {
$response .= fgets($socket, 1024);
}
$response = explode("\n", $response);
// Server port
$query['serverPort'] = explode(" ", $response[0], 2);
$query['serverPort'] = $query['serverPort'][1];
// Player count
$query['playerCount'] = explode(" ", $response[1], 2);
$query['playerCount'] = $query['playerCount'][1];
// Max players
$query['maxPlayers'] = explode(" ", $response[2], 2);
$query['maxPlayers'] = $query['maxPlayers'][1];
// Player list
$query['playerList'] = explode(" ", $response[3], 2);
$query['playerList'] = explode(", ", trim($query['playerList'][1], "[]"));
$query['latency'] = ($end_time - $beginning_time) * 1000;
return $query;
}
/**
* Queries a Minequery server using JSON.
*/
public static function query_json($address, $port = 8000, $timeout = 5) {
$beginning_time = microtime(true);
$socket = @fsockopen($address, $port, $errno, $errstr, $timeout);
if (!$socket) {
// Could not establish a connection to the server.
return false;
}
$end_time = microtime(true);
fwrite($socket, "QUERY_JSON\n");
$response = "";
while(!feof($socket)) {
$response .= fgets($socket, 1024);
}
$query = json_decode($response);
$query->latency = ($end_time - $beginning_time) * 1000;
return $query;
}
}
//LA OU J'ECRIS !//
print_r(Minequery::query("88.182.196.189"));
echo '<br>';
print_r(Minequery::query_json("88.182.196.189"));
?>
Ce que je voudrais c'est récupérer MaxPlayers, PlayersCount et PlayersList pour pouvoir mettre ca sur mon site.
A part ça tout marche (le serveur est reconnu, le problème n'est pas la) !
J'ai juste besoin d'écrire sur mon site par exemple : Joueurs en ligne 2/10.
J'espère que vous pourrez m'aider !
Merci d'avance !
Louis