lukasss93/minecraft-server-status

用于检查 Minecraft 服务器状态的 PHP 库

2.0 2018-10-07 00:59 UTC

This package is auto-updated.

Last update: 2024-08-28 06:14:24 UTC


README

Latest Stable Version Total Downloads License PHP

此库可用于检查 Minecraft 服务器的基本状态信息。

⚠ 当您无法从服务器检索信息时,请不要创建问题,除非您能证明库中存在错误。

Ping 和 Query 之间的区别

有两种方法可以检索有关 Minecraft 服务器的信息。

  • Ping

    Ping 协议自 Minecraft 1.7 版本开始添加,用于查询服务器以获取最小量的信息(主机名、motd、图标和玩家样本)。这更容易使用,且不需要在服务器端进行额外设置。它使用与您连接到服务器的同一端口的 TCP 协议,可选参数 IsOld17 可用于查询 1.6 版本或更旧的版本。 注意:此方法不适用于 Minecraft: Bedrock Edition

  • Query

    此方法使用 GameSpy4 协议,需要在您的 server.properties 中启用 query 监听器,如下所示

    enable-query=true

    query.port=25565

    Query 允许请求服务器插件和玩家的完整列表,但是此方法更容易损坏,因此如果您不需要所有这些信息,请坚持使用 ping 方法,因为它更可靠。

要求

  • PHP >= 5.6
  • Json 扩展
  • Iconv 扩展

安装

您可以使用 composer 安装此库

composer require lukasss93/minecraft-server-status

使用

MCPing

使用

<?php
	//using the class
	use MCServerStatus\MCPing;
	
	//include composer autoload
	require_once('../vendor/autoload.php');
	
	//checking account
	$response=MCPing::check('hostname or IP');
	
	//get informations from object
	var_dump($response);
	
	//or from array
	var_dump($response->toArray());
?>

如果您想从使用低于 Minecraft 1.7 版本的版本的服务器获取 ping 信息,请在 $timeout 后添加 true 参数。

请注意,此库也解决 SRV 记录。

输入

check() 方法有 4 个可选参数

输出

check() 方法返回一个具有以下属性的对象

您可以在 check() 方法之后使用以下方法:

MCQuery

使用

<?php
	//using the class
	use MCServerStatus\MCQuery;
	
	//include composer autoload
	require_once('../vendor/autoload.php');
	
	//checking account
	$response=MCQuery::check('hostname or IP');
	
	//get informations from object
	var_dump($response);
	
	//or from array
	var_dump($response->toArray());
?>

输入

check() 方法有 4 个可选参数

输出

check() 方法返回一个具有以下属性数组的对象

您可以在 check() 方法之后使用以下方法:

变更日志

此项目的所有重大更改都将在此处记录:这里

最近更改

[2.0]

  • 首次发布