mirror of
https://github.com/zhamao-robot/zhamao-framework.git
synced 2026-03-18 05:04:51 +08:00
add CheckConfigCommand.php add config update record docs adjust swoole version to 4.5.0 fix stop and reload bugs add $_running_annotation add remote terminal update global config add timer tick exception handler add zm_xxx global functions add isAtMe(), splitCommand(), matchCommand() function for MessageUtil add workerAction(), sendActionToWorker(), resumeAllWorkerCoroutines() functions for ProcessManager optimize CQCommand match function add custom TerminalCommand annotation add TuringAPI add getReloadableFiles() function for ZMUtil
2.2 KiB
2.2 KiB
内部类文件手册
这个章节写明了在框架使用过程中可能涉及到的框架内部或 Swoole、其他 composer 依赖组件的内部类,这里会根据类的命名空间一一说明。
Swoole\Http\Request
此类是 Swoole 内部的一个类,一般在收到 HTTP 请求时,在 @RequestMapping 或 @OnRequestEvent() 两个注解下可用,用作获取 GET、POST参数,上传到后端的文件、Cookies 等。详见 Swoole 文档 - Request 。
属性
$fd:获取当前连接的文件描述符 ID。$header:HTTP请求的头部信息。类型为数组,所有key均为小写。$server:HTTP请求相关的服务器信息。$cookie:获取 Cookies。$get:获取 GET 参数。$post:获取 POST 参数。$files:获取上传的文件信息
方法
rawContent():获取 POST 包原始二进制内容,相当于原生 PHP 的file_get_contents("php://input");。getData():获取完整的原始Http请求报文。包括Http Header和Http Body
示例
TODO:先放一放。
ZM\Entity\MatchObject
此类是调用方法 MessageUtil::matchCommand() 返回的对象体,含有匹配成功与否和匹配到的注解相关的信息。
属性
$match:bool类型,返回匹配是否成功$object:CQCommand注解类,如果匹配成功则返回对应的@CQCommand信息match:array类型,如果匹配成功则返回匹配到的参数
// 假设我有一个注解事件 @CQCommand(match="你好"),绑定的函数是 \Module\Example\Hello 下的 hello123()
$obj = MessageUtil::matchCommand("你好 我叫顺溜 我今年二十八", ctx()->getData());
/* 以下是返回信息,仅供参考
$obj->match ==> true
$obj->object ==> \ZM\Annotation\CQ\CQCommand: (
match: "你好",
pattern: "",
regex: "",
start_with: "",
end_with: "",
keyword: "",
alias: [],
message_type: "",
user_id: 0,
group_id: 0,
discuss_id: 0,
level: 20,
method: "hello123",
class: \Module\Example\Hello::class
)
$obj->match ==> [
"我叫顺溜",
"我今年二十八"
]
*/