伙计们,我正试图订阅cloudmqtt免费赠品服务器中的一个主题。服务器:cloudMQTT
库:phpMQTT.php
发布这个话题似乎是完美的,但每当我执行php文件时,它都会给我以下错误
错误:
致命错误:中超过了30秒的最长执行时间F: \axamp\htdocs\bus_track\live\phpMQTT.php在第321行上
PHP代码:
<?php
require("phpMQTT.php");
$server = "***.cloudmqtt.com";
$port = ******;
$username = "*******";
$password = "********";
$mqtt = new bluerhinosphpMQTT($server, $port, "ClientID".rand());
//$top=$_GET['topic'];
if(!$mqtt->connect(true,NULL,$username,$password)){
exit(1);
}
$topics["sensor/temp"] = array("qos"=>0, "function"=>"procmsg");
$mqtt->subscribe($topics,0);
while($mqtt->proc()){
}
$mqtt->close();
function procmsg($topic,$msg){
echo "Msg Recieved: $msg";
}
?>
连接工作正常。
你的代码中有一个无限循环:
while($mqtt->proc()){
}
因此,这一部分永远不会结束,因此当运行时间达到30秒时会出现错误消息。