M5: Workerman 常驻服务 + AI 审核/润色插件 + 支付插件(支付宝/微信/沙箱)+ 会员插件(套餐/订阅/付费文章)
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace App\Blog\Support;
|
||||
|
||||
use Workerman\Connection\TcpConnection;
|
||||
|
||||
/**
|
||||
* Workerman WebSocket 广播器:任务执行中向后台推送进度。
|
||||
*/
|
||||
class WorkermanBroadcaster
|
||||
{
|
||||
/** @var array<int, TcpConnection> */
|
||||
public static array $connections = [];
|
||||
|
||||
public static function add(TcpConnection $connection): void
|
||||
{
|
||||
self::$connections[spl_object_id($connection)] = $connection;
|
||||
}
|
||||
|
||||
public static function remove(TcpConnection $connection): void
|
||||
{
|
||||
unset(self::$connections[spl_object_id($connection)]);
|
||||
}
|
||||
|
||||
public static function send(string $event, array $data = []): void
|
||||
{
|
||||
$message = json_encode(['event' => $event, 'data' => $data], JSON_UNESCAPED_UNICODE);
|
||||
|
||||
foreach (self::$connections as $connection) {
|
||||
$connection->send($message);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user