我已经从https://mosquitto.org/download/在我的 Windows 机器上安装了 MQTT 代理。
我正在使用https://github.com/bluerhinos/phpMQTT/tree/master/examples进行发布和订阅。发布按预期工作,但订阅不起作用。
我不明白为什么这不起作用。连接远程 MQTT 服务器需要 MQTT 代理吗?我想在php中实现发布和订阅方法
发布:
require("../phpMQTT.php");
$mqtt = new phpMQTT("host", 1883, "124464646464/32"); //Change client name to something unique
if ($mqtt->connect()) {
echo "Connect Sucssfully";
try
{
$mqtt->publish("124464646464/Test","Hello HK123! at ".date("r"),0);
echo "<br>publish done";
$mqtt->close();
}
catch(Exception $e)
{
echo $e;
}
}
Run Code Online (Sandbox Code Playgroud)
订阅:
ini_set('output_buffering','on');
require("../phpMQTT.php");
$mqtt = new phpMQTT("host", 1883, "124464646464/27"); //Change client name to something unique
if(!$mqtt->connect()){
exit(1);
}
$topics['124464646464/Test'] = array("qos"=>0, "function"=>"procmsg");
$mqtt->subscribe($topics,0);
while($mqtt->proc()){
}
$mqtt->close();
function …Run Code Online (Sandbox Code Playgroud)