multitheftauto/mtasa-php-sdk

MTA SDK 用于与 MTA 服务器交互。

v1.2.0 2022-08-25 09:30 UTC

README

PHP Composer

您可以使用几乎任何可以请求网页的编程语言访问 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