Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

31 Commits

Repository files navigation

MinecraftQuery

🛰️ Minecraft PHP library for retrieving server query data

Installation

Required at least PHP 7.2

composer require php-minecraft/minecraft-query

Example usage

declare(strict_types=1);
require__DIR__ . '/../vendor/autoload.php';
usePHPMinecraft\MinecraftQuery\MinecraftQueryResolver;

Minecraft v1.7+

$resolver = newMinecraftQueryResolver('play.minecord.net', 25565);
$result = $resolver->getResult();

Minecraft <= v1.6

$resolver = newMinecraftQueryResolver('play.minecord.net', 25565);
$resolver->retrieveDataPre17();
$result = $resolver->getResult();

Autodetect minecraft version (if 1.7+ query fails, older will be used)

$resolver = newMinecraftQueryResolver('play.minecord.net', 25565);
$result = $resolver->getResult($tryOldQueryProtocolPre17 = true);

Result data

$result->getMaxPlayers() // integer$result->getOnlinePlayers() // integer$result->getPlayersSample() // array (players -> sample at https://wiki.vg/Server_List_Ping)$result->getVersion() // string$result->getProtocolVersion() // integer$result->getMessageOfTheDay() // string$result->getLatency() // integer (ms)$result->getFavicon() // string or null

Tweaks

// use this cosntructor if you dont want separate address to host and port$resolver = MinecraftQueryResolver::fromAddress('play.minecord.net');
// use this method if you want raw data in array retrieved from minecraft server$rawData = $resolver->getRawData();
// use this method if you want construct MinecraftQueryResult from raw data$result = MinecraftQueryResult::fromRawData($rawData);

Library (socket logic) is inspired by xPaw/PHP-Minecraft-Query

About

🛰️ Minecraft PHP library for retrieving server query data

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages