返回顶部
a

amphpAMPHP

>

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
219
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

amphp

AMPHP v3 技能

版本

本技能仅涵盖 AMPHP v3 — amphp/amp ^3、revolt/event-loop ^1、PHP 8.1+。

如果遇到 v2 模式(yield $promise、Amp\Loop::run()、Promise、Coroutine),请将其视为错误,并使用 v3 等效代码重写。完整迁移表请参见 docs/v2-v3.md



不可妥协的规则

以下规则适用于您在 AMPHP 项目中编写或修改的每个文件:

  • - 始终在每个 PHP 文件顶部添加 declare(stricttypes=1)。
  • 始终在每个 jsonencode / jsondecode 调用中传递 JSONTHROWONERROR。
  • 切勿在事件循环中使用阻塞 I/O(filegetcontents、PDO、curl_exec、sleep)——请使用 amphp/file、amphp/mysql、amphp/http-client、Amp\delay() 中的异步等效方法。
  • 始终在 finally 块中释放互斥锁/信号量锁——否则异常会跳过清理。
  • 始终对 HTTP 响应体执行 buffer() 或完全迭代——未读取的响应体会阻塞连接复用。

有关 19 个以上已记录的陷阱(缓冲区死锁、通道 EOF、箭头函数捕获、Redis 工厂与构造函数等)的完整列表,请在编写异步代码前阅读 docs/common-mistakes.md



参考文件

仅加载与任务相关的文件。不要一次性加载所有文件。

文档

文件何时加载
docs/constructors.md实例化任何 AMPHP 类时——已验证的构造函数签名、参数名称、默认值和工厂方法
docs/namespaces.md
编写 use 导入时——每个类、函数和枚举的完整命名空间路径 | | docs/packages.md | 启动新项目或添加依赖时——composer require 命令和包概述 | | docs/common-mistakes.md | 在编写任何异步代码之前——19 个以上真实错误及正确/错误示例 | | docs/v2-v3.md | 从 AMPHP v2 迁移或遇到 yield/Promise/Coroutine 模式时 |

示例

文件何时加载
examples/core-async.mdEventLoop 引导、async()、delay()、Future 组合器(await、awaitAll、awaitAny)、DeferredFuture
examples/cancellation.md
TimeoutCancellation、DeferredCancellation、CompositeCancellation、传播取消 | | examples/sync.md | LocalMutex、LocalSemaphore、LocalParcel、Barrier、LocalKeyedMutex、RateLimitingSemaphore、synchronized() | | examples/http-server.md | 最小服务器、带路由参数的路由器、中间件栈、TLS、会话、静态文件、代理设置 | | examples/http-client.md | GET/POST、并行请求、ConnectionLimitingPool、拦截器、代理、流式响应体 | | examples/websocket.md | 回声服务器、带 drain 模式的仅推送、广播网关、WS 客户端、流式二进制消息 | | examples/byte-stream.md | ReadableBuffer、pipe()、GZIP 压缩/解压、Base64 编码/解码、splitLines() | | examples/pipelines.md | Queue 背压、Pipeline 操作符(map、filter、tap)、concurrent()、merge()、concat() | | examples/parallel.md | Task 接口、带工作池的扇出、IPC 通道进度报告、ChannelException 处理 | | examples/database.md | MySQL 连接池、事务、预处理语句;Redis get/set/hash/pubsub/cache | | examples/file-io.md | File\read/write/exists/getSize/openFile/listFiles/deleteDirectory/createDirectoryRecursively | | examples/cache.md | LocalCache(LRU + TTL)、AtomicCache(compute-if-absent)、PrefixCache、NullCache | | examples/interval.md | Interval 重复定时器、enable/disable、weakClosure() 防止 GC 循环、EventLoop::delay/repeat/cancel | | examples/testing.md | AsyncTestCase、构造模拟 Request 对象、League\Uri\Http::new()、phpunit CLI 标志 |

工作流

文件何时加载
workflows/http-server-full.md从头构建完整的 HTTP 服务器:路由器 + 中间件 + 静态文件 + WebSocket + 优雅关闭
workflows/parallel-fan-out.md
CPU 密集型工作负载跨多个工作进程拆分,带 IPC 进度报告 | | workflows/tcp-server.md | 原始 TCP 服务器:回声、自定义二进制协议、TLS 双向认证、优雅关闭 |

模板

文件何时加载
templates/http-server.php完整 HTTP 服务器的复制粘贴样板(路由器 + 中间件 + 静态文件 + 优雅关闭)
templates/websocket-handler.php
WebSocket 处理器的复制粘贴样板:回声、仅推送、广播网关 | | templates/parallel-task.php | 带 IPC 进度 + 扇出编排的工作 Task 类的复制粘贴样板 |

脚本

文件用途
scripts/server-demo.phpphp scripts/server-demo.php [--port=N] — 运行最小 HTTP 服务器以验证设置
scripts/http-client-demo.php
php scripts/http-client-demo.php [url] — 演示 GET、并行请求、ConnectionLimitingPool |

资源

文件何时加载
resources/blocking-vs-async.md快速查找:将每个常见阻塞 PHP 函数映射到其 AMPHP v3 异步替代方案

遗留

文件内容
references/advanced-patterns.md深入探讨:纤程模型内部、所有 Future 组合器、Queue 背压机制、Pipeline 并发、Cancellation 语义、EventLoop 定时器详情
references/class-examples.md
每个关键 AMPHP 类的一个最小使用示例,按包组织 |

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 amphp-1776125605 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 amphp-1776125605 技能

通过命令行安装

skillhub install amphp-1776125605

下载

⬇ 下载 amphp v1.0.0(免费)

文件大小: 74.85 KB | 发布时间: 2026-4-14 16:05

v1.0.0 最新 2026-4-14 16:05
Initial public release of the amphp skill for async PHP development.

- Adds comprehensive skill for non-blocking, async PHP using AMPHP v3 (amphp/amp ^3, revolt/event-loop ^1).
- Covers usage across the amphp/* ecosystem: HTTP/WS servers and clients, file, cache, pipeline, parallel, databases, and more.
- Enforces best practices, including strict types, async I/O, and critical AMPHP safety rules.
- Includes detailed reference for docs, examples, workflows, templates, and migration guides from v2.
- Designed to match real-world async PHP needs, even when "amphp" is implied but not stated.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部