MQTT (Message Queuing Telemetry Transport) は、IoT デバイス間の通信に一般的に使用される軽量のメッセージ送信プロトコルです。 PHP は、MQTT クライアントの開発に使用できる、一般的に使用されるサーバー側プログラミング言語です。この記事では、PHP を使用して MQTT クライアントを開発する方法を紹介します。次の内容が含まれます。
MQTT プロトコルはパブリッシュ/サブスクライブ モデルに基づいており、これには次の基本的なものが含まれます。コンポーネント:
PHP MQTT クライアント ライブラリの選択と使用
Mosquitto ライブラリを使用して MQTT クライアントを開発するには、次の手順が必要です。
Mosquitto ライブラリをインストールする<?php // 1. 安装Mosquitto Library // 安装Mosquitto Library需要使用系统自带的包管理工具,如apt-get、yum等 // 例如,在Ubuntu下可以使用以下命令安装:sudo apt-get install mosquitto mosquitto-clients php-mosquitto // 2. 创建Mosquitto Client $mqtt = new MosquittoClient(); // 3. 连接到MQTT Broker $mqtt->connect('localhost', 1883); // 4. 发布和订阅消息 // 发布消息 $mqtt->publish('test_topic', 'hello world', 0); // 订阅消息 $mqtt->subscribe('test_topic', 0); $mqtt->loop(); // 5. 断开与Broker的连接 $mqtt->disconnect(); unset($mqtt); ?>
上記のコードでは、まず Mosquitto クライアント インスタンスを作成し、
connect メソッドを使用してローカル MQTT ブローカーに接続します。次に、publish
メソッドを使用して、「test_topic」という名前のメッセージを公開しました。次に、subscribe
メソッドを使用して同じトピックにサブスクライブし、loop
メソッドを使用してループでメッセージの受信を開始します。最後に、disconnect
メソッドを使用してブローカーから切断します。 例: PHP MQTT クライアントを使用したメッセージのパブリッシュとサブスクライブ
<?php // 1. 安装Mosquitto Library // 2. 创建Mosquitto Client $mqtt = new MosquittoClient(); // 3. 连接到MQTT Broker $mqtt->connect('localhost', 1883); // 4. 发布和订阅消息 // 发布消息 $mqtt->publish('test_topic', 'hello world', 0); // 订阅消息 $mqtt->subscribe('test_topic', 0); $mqtt->loop(function ($message) { echo 'Received message: ' . $message->payload . PHP_EOL; }); // 5. 断开与Broker的连接 $mqtt->disconnect(); unset($mqtt); ?>
上記のコードでは、受信したメッセージを処理するコールバック関数を追加しました。これにより、メッセージのペイロードが端末に出力されます。しかし、これは単なる例であり、実際には、MQTT クライアントのアプリケーション シナリオは、IoT デバイスの監視、リアルタイム データ送信など、非常に多岐にわたります。 PHP Mosquitto Library を通じて、MQTT クライアントを便利かつ迅速に開発して、効率的なデータ送信と交換を実現できます。
以上がPHP MQTT クライアント開発ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。