Skip to main content

Workerman/MQTT

去官方 Github 看看

还是直接看官方文档吧

Subscribe DEMO

<?php
require 'vendor/autoload.php';
use Workerman\Worker;
$worker = new Worker();
$worker->onWorkerStart = function(){
$mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');
$mqtt->onConnect = function($mqtt) {
$mqtt->subscribe('test');
};
$mqtt->onMessage = function($topic, $content){
var_dump($topic, $content);
};
$mqtt->connect();
};
Worker::runAll();

Publish DEMO

<?php
require 'vendor/autoload.php';
use Workerman\Worker;
$worker = new Worker();
$worker->onWorkerStart = function(){
$mqtt = new Workerman\Mqtt\Client('mqtt://test.mosquitto.org:1883');
$mqtt->onConnect = function($mqtt) {
$mqtt->publish('test', 'hello workerman mqtt');
};
$mqtt->connect();
};
Worker::runAll();

PHP必须安装的扩展:

pcntl

执行订阅

php sub.php start

后台开始执行订阅

php sub.php start -d

停止订阅

php sub.php stop

查看进程

ps aux