dev-lancer/mc-pack
Composer 安装命令:
composer require dev-lancer/mc-pack
包简介
The library is designed to integrate the minecraft server with the website.
README 文档
README
Installation
This library can installed by issuing the following command:
composer require dev-lancer/mc-pack
Query
This method uses GameSpy4 protocol, and requires enabling query listener in your server.properties like this:
enable-query=true
query.port=25565
Rcon
This method allows you to send commands, it is used in item shop, and requires enabling rcon listener in your server.properties like this:
enable-rcon=true
rcon.port=25575
rcon.password=pass
Example
Query & Rcon
It enables downloading basic server information and sending commands.
<?php require 'vendor/autoload.php'; use DevLancer\MCPack\ConsoleRcon; use DevLancer\MinecraftStatus\Query; $info = new Query("some.minecraftserver.com", 25565); $info->connect(); $console = new ConsoleRcon("some.minecraftserver.com", 25575, "pass", 3); $console->connect(); $players = $info->getCountPlayers(); echo $players . "/" . $info->getMaxPlayers(); $console->sendCommand("bc MCPack");
Look here for Query
Look here for RCON
ServerManager with SSH
It enables downloading basic server information, sending commands and server management.
<?php require 'vendor/autoload.php'; use DevLancer\MCPack\ConsoleRcon; use DevLancer\MCPack\Manager\ServerManager; use DevLancer\MCPack\Sftp\Sftp; $host = "some.minecraftserver.com"; $sftp = new Sftp($host); $sftp->login("username", "password"); $server = new ServerManager($sftp, 25565); $path = "path/to/minecraft/server.jar"; if(!$server->isRunning()) { if ($server->run(["-Xmx1G"], $path)) echo "server started"; }
Server logs
This class allows downloading logs from the server.
<?php require 'vendor/autoload.php'; use DevLancer\MCPack\Logs; use DevLancer\MCPack\Sftp\Sftp; $host = "some.minecraftserver.com"; $sftp = new Sftp($host); $sftp->login("username", "password"); $path = "path/to/minecraft/logs/latest.log"; $logs = new Logs($sftp, $path); echo implode("<br />", $logs->getLogs(true));
Properties
<?php require 'vendor/autoload.php'; use DevLancer\MCPack\Manager\PropertiesManager; use DevLancer\MCPack\Sftp\Sftp; $sftp = new Sftp("some.minecraftserver.com"); $sftp->login("username", "password"); $manager = new PropertiesManager("path/to/minecraft/server.properties", $sftp); $properties = $manager->getProperties(); $properties->setRconPassword("new-password"); $manager->saveProperties($properties);
Motd
<?php require 'vendor/autoload.php'; use DevLancer\MCPack\Motd; use DevLancer\MinecraftStatus\Ping; $host = "some.minecraftserver.com"; $info = new Ping($host, 25565); $info->connect(); $motd = new Motd($info); $motd->sendRequest(); echo $motd->getResponse(Motd::RESPONSE_HTML);
Look here
License
dev-lancer/mc-pack 适用场景与选型建议
dev-lancer/mc-pack 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.41k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2024 年 01 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「library」 「console」 「query」 「server」 「ssh」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 dev-lancer/mc-pack 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 dev-lancer/mc-pack 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 dev-lancer/mc-pack 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
This class provides you with an easy-to-use interface to progress bars.
A Laravel package to retrieve data from Google Search Console
Additional artisan commands for Laravel
Inbox pattern process implementation for your Laravel Applications
A table generator class for the PHP CLI.
Core library that defines common interfaces used by the rest of the intahwebz..
统计信息
- 总下载量: 1.41k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 26
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-01-30