🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Protocol API 使用`pack`和`unpack`按照 MQTT 协议来进行打包和解析。 ## MQTT 3.1.x ```php Simps\MQTT\Protocol\V3::pack(array $array) Simps\MQTT\Protocol\V3::unpack(string $data) ``` ## MQTT 5.0 ```php Simps\MQTT\Protocol\V5::pack(array $array) Simps\MQTT\Protocol\V5::unpack(string $data) ``` ## Constants MQTT 协议等级和名称的常量 ```php Simps\MQTT\Protocol\ProtocolInterface::MQTT_PROTOCOL_LEVEL_3_1; // 3.1 Simps\MQTT\Protocol\ProtocolInterface::MQTT_PROTOCOL_LEVEL_3_1_1; // 3.1.1 Simps\MQTT\Protocol\ProtocolInterface::MQTT_PROTOCOL_LEVEL_5_0; // 5.0 Simps\MQTT\Protocol\ProtocolInterface::MQISDP_PROTOCOL_NAME; // MQIsdp Simps\MQTT\Protocol\ProtocolInterface::MQTT_PROTOCOL_NAME; // MQTT ``` ## ReasonCode 原因码小于`0x80`表示操作成功完成,成功的常规原因码为`0`,原因码值为`0x80`或更大表示失败。 可以使用`ReasonCode::getReasonPhrase()`方法将原因码转为人类可读的名称。 ```php Simps\MQTT\Hex\ReasonCode::getReasonPhrase(0x86); Simps\MQTT\Hex\ReasonCode::getReasonPhrase(0x02, true); ```