mosamirzz/poller

使用 PHP 实现轮询机制的一种非常简单的方法。

1.0 2023-04-24 14:36 UTC

This package is auto-updated.

Last update: 2024-09-24 17:39:18 UTC


README

Latest Version on Packagist Total Downloads GitHub Actions

alt text

使用 PHP 实现轮询机制的一种非常简单的方法。

安装

您可以通过 composer 安装此包

composer require mosamirzz/poller

用法

$result = Poller::do(
    fn () => Http::get("https://ads-api.tiktok.com/api/status/get/", [
        "advertiser_id" => 12345678,
        "task_id" => 23456789,
    ])
)->every(seconds: 5)
    ->failAfter(attempts: 3)
    ->stopWhen(
        fn (mixed $result): bool => $result["status"] == "SUCCESS"
    )
    ->onFail(function (Throwable $e) {
        Log::error("Got an error", [
            "msg" => $e->getMessage(),
            "code" => $e->getCode(),
        ]);
    })
    ->start();

测试

composer test

变更日志

请参阅 CHANGELOG 了解最近的变化。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全性

如果您发现任何与安全性相关的问题,请发送电子邮件至 gm.mohamedsamir@gmail.com 而不是使用问题跟踪器。

致谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件

PHP 包模板

此包是使用 PHP 包模板Beyond Code 生成的。