MQTT 是物聯(lián)網(wǎng)的消息傳送協(xié)議標(biāo)準(zhǔn)。
在 CentOS 7上常用的開(kāi)源 MQTT 消息服務(wù)器就是 Mosquitto。
我們用 PECL 來(lái)安裝 Mosquitto 的 PHP 實(shí)現(xiàn)。
首先要確保 php-devel 已經(jīng)安裝:
# yum install -y php-devel
然后確保 mosquitto-devel 也已經(jīng)安裝:
#yum install -y mosquitto-devel
再用 pecl 來(lái)安裝 Mosquitto-PHP
# pecl install Mosquitto-alpha
然后去 /etc/php.ini 添加一行:
extension=mosquitto.so
重啟 Apache后,運(yùn)行 php -i|grep mosquitto 可以看到
mosquitto
libmosquitto version => 1.4.13
表明 PHP 可以使用 mosquitto 的 MQTT 庫(kù)了。
下面是用 PHP 來(lái)發(fā)送消息的示例代碼 mosquitto-test.php:
2
3
4 $c = new MosquittoClient;
5
6 $topic = 'test';
7 $msg = 'hello你好';
8 $qos = 2;
9
10 $username = 'username';
11 $password = 'Passw0rd';
12
13 $c->setCredentials($username, $password);
14 $c->onConnect(function() use ($c) {
15 global $topic,$msg,$qos;
16 $c->publish($topic, $msg, $qos);
17 });
18
19 $host = '192.168.7.201';
20
21 $c->connect($host);
22 for ($i = 0; $i < 100; $i++) {
23 // Loop around to permit the library to do its work
24 $c->loop(1);
25 }
26
27 echo "結(jié)束 ";
然后運(yùn)行 php mosqitto-test.php
另外開(kāi)啟一個(gè)終端,用
# mosquitto_sub -h 192.168.7.201 -u username -P Passw0rd -t test
可以看到 PHP 程序發(fā)送的消息: "hello你好".
以上就是“php搭建MQtt協(xié)議服務(wù)”的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注木子天禾科技其它相關(guān)文章!