我不知道那个库,但是在那个代码
https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php中,它可能会看到它是如何工作的。
在 :
$topics['edafdff398fb22847a2f98a15ca3186e/#'] = array("qos"=>0, "function"=>"procmsg");
您告诉它主题“edafdff398fb22847a2f98a15ca3186e/#”的服务质量 (qos) = 0,以及一个名为“procmsg”的“事件”。这就是你后来写这篇文章的原因
function procmsg($topic,$msg){ ... }
因此在 while($mqtt->proc()) 中,此函数将检查每次是否有新消息(第 332 行调用消息函数,然后调用源代码的 procmsg)
这就是为什么你不能在你的代码中调用 procmsg 的原因
换句话说,也许在 procmsg 内,您可以调用函数来处理消息 ej :
function procmsg($topic,$msg){
$value = $msg * 10;
doStuffWithDataAndDatabase($value);
}
请注意,您可以简单地更改函数的名称 ej :
$topics['edafdff398fb22847a2f98a15ca3186e/#'] = array("qos"=>0, "function"=>"onMessage");
接着 :
function onMessage($topic,$msg){
$value = $msg * 10;
doStuffWithDataAndDatabase($value);
}
对不起我的英语,希望对您有所帮助!