multitheftauto / mtasa-php-sdk
MTA SDK 用于与 MTA 服务器交互。
v1.2.0
2022-08-25 09:30 UTC
Requires
- php: ^7.4 || ^8.0
- ext-json: *
- php-http/client-implementation: ^1.0
- php-http/httplug: ^2.3
- psr/http-factory: ^1.0
Requires (Dev)
- composer/package-versions-deprecated: 1.11.99.5
- friendsofphp/php-cs-fixer: ^2.19
- guzzlehttp/psr7: ^2.4
- http-interop/http-factory-guzzle: ^1.2
- infection/infection: ^0.18.2
- php-http/mock-client: ^1.1
- phpspec/prophecy: ~1.15
- phpstan/phpstan: ^1.4
- phpunit/phpunit: ^9
This package is not auto-updated.
Last update: 2024-09-30 15:47:27 UTC
README
您可以使用几乎任何可以请求网页的编程语言访问 MTA 网页界面。PHP 可以非常容易地完成此操作。
此 SDK 提供一个功能调用,允许您调用您有权访问的任何服务器上导出的脚本函数。
有关更多信息,请参阅官方维基页面。
安装
先决条件
此 SDK 需要 PHP 7.4 或更高版本。
HTTPlug 客户端抽象
由于此 SDK 使用 HTTPlug,您将需要安装一些库才能使其正常工作。有关更多信息,请参阅"HTTPlug for library users"。
快速安装(从 HTTPlug 文档中固定)
composer require php-http/curl-client guzzlehttp/psr7 php-http/message http-interop/http-factory-guzzle
⚠️ 注意:如果您在 require SDK 之前不遵循此要求,composer 将会抛出错误。
设置
唯一支持的安装方法是使用 Composer。运行以下命令将此 SDK 添加到您的项目中
composer require multitheftauto/mtasa-php-sdk
简单示例
如下例所示,有三种方式可以调用 MTA 服务器导出的函数
<?php require_once('vendor/autoload.php'); use MultiTheftAuto\Sdk\Mta; use MultiTheftAuto\Sdk\Model\Server; use MultiTheftAuto\Sdk\Model\Authentication; $server = new Server('127.0.0.1', 22005); $auth = new Authentication('myUser', 'myPassword'); $mta = new Mta($server, $auth); $response = $mta->getResource('someResource')->call('callableFunction', $arg1, $arg2, $arg3, ...); // or $response = $mta->getResource('someResource')->call->callableFunction($arg1, $arg2, $arg3, ...); var_dump($response);
开发环境设置
先决条件:
首先,我们需要构建本地的 docker 图像。为此,请运行以下命令
$ docker-compose build
我们将使用别名来执行开发命令。
$ alias dcli='docker-compose -f docker-compose.cli.yml run --rm'
安装依赖:
$ dcli composer install
运行测试
要运行项目测试并验证编码标准
$ dcli composer test
要运行所有单元测试,可以使用
$ dcli phpunit
要运行特定的单元测试,可以使用 --filter 选项
$ dcli phpunit --filter=ClassName::MethodName