Rumah >pembangunan bahagian belakang >tutorial php >Cara menggunakan fungsi IoT dalam PHP

Cara menggunakan fungsi IoT dalam PHP

WBOY
WBOYasal
2023-05-19 08:00:281484semak imbas

Dengan perkembangan pesat teknologi IoT, semakin banyak aplikasi perlu mengakses peranti IoT untuk mencapai fungsi yang lebih pintar. PHP ialah bahasa pembangunan web yang sangat popular yang turut menyokong komunikasi dengan peranti IoT. Artikel ini akan memperkenalkan cara menggunakan fungsi IoT dalam PHP.

1. Pasang pustaka fungsi IoT PHP

Menggunakan fungsi IoT dalam PHP memerlukan pemasangan pustaka fungsi yang sepadan. Pada masa ini, PHP menyediakan dua perpustakaan fungsi untuk berkomunikasi dengan peranti IoT, MQTT dan AMQP Kita boleh memilih untuk memasangnya mengikut keperluan sebenar.

1 Pasang pustaka fungsi MQTT

MQTT ialah protokol penghantaran mesej ringan yang biasa digunakan dalam aplikasi Internet of Things. Kita boleh memasang pustaka fungsi MQTT melalui alat PECL. Langkah-langkah khusus adalah seperti berikut:

(1) Pasang alat PECL:

sudo apt-get install php-pear

(2) Pasang pustaka fungsi MQTT:

sudo pecl install Mosquitto-alpha

Selepas pemasangan selesai, kita perlu menambah kandungan berikut pada fail php.ini:

extension=mosquitto.so

2. Pasang perpustakaan Fungsi AMQP

AMQP ialah protokol baris gilir mesej lanjutan yang juga biasa digunakan dalam aplikasi IoT. Kita boleh memasang perpustakaan fungsi AMQP melalui alat PECL. Langkah-langkah khusus adalah seperti berikut:

(1) Pasang alat PECL:

sudo apt-get install php-pear

(2) Pasang pustaka fungsi AMQP:

sudo pecl install amqp

Selepas pemasangan selesai, kita perlu menambah kandungan berikut pada fail php.ini:

extension=amqp.so

2. Gunakan PHP untuk Fungsi Internet of Things

1 Gunakan fungsi MQTT

Untuk menggunakan fungsi MQTT, anda perlu mencipta klien MQTT dahulu, dan kemudian anda boleh menggunakan. pelanggan MQTT untuk melanggan topik dan menerbitkan mesej. Kod khusus adalah seperti berikut:

//Buat klien MQTT
$broker = "localhost"; //alamat pelayan MQTT
$client = new MosquittoClient();
$client->setLogLevel(MosquittoClient::LOG_LEVEL_DEBUG); //Tetapkan tahap log
$client->onConnect(function() use ($client) { //Sambung ke pelayan

$client->subscribe('/test'); //在主题'/test'上订阅消息

});
$client->onMessage(function($message) { //Fungsi panggilan balik selepas menerima mesej

echo $message->payload . "

"; //Cetak mesej
});
$client->connect($broker); //Sambung ke pelayan MQTT

//Publish message
$msg = "Hello, MQTT!" //Mesej untuk diterbitkan
$client ->publish('/test', $msg, 0, false); //Terbitkan mesej ke topik '/test'

2 Gunakan fungsi AMQP Anda juga perlu mencipta klien AMQP terlebih dahulu, dan kemudian anda boleh menggunakan klien untuk mewujudkan saluran komunikasi dan menghantar mesej Kod khusus adalah seperti berikut:

//Buat klien AMQP

. $connection = new AMQPConnection(array(

'host' => 'localhost', //AMQP服务器地址
'port' => '5672', //AMQP服务器端口
'username' => 'guest', //AMQP服务器用户名
'password' => 'guest' //AMQP服务器密码

));

$channel = $connection->channel(); //Buat saluran komunikasi


//Terbitkan mesej

$exchange = 'test_exchange'; / /Exchange name

$queue = 'test_queue'; //Nama giliran
$msg = new AMQPMessage('Hello, AMQP!'); 🎜>$channel->exchange_declare( $exchange, 'fanout', false, true, false); //Istiharkan suis
$channel->queue_bind($queue, $exchange); dan tukar
$channel-> basic_publish($msg, $exchange); //Terbitkan mesej ke suis

Ringkasan

Sebagai bahasa pembangunan web yang popular, PHP boleh berkomunikasi dengan mudah dengan peranti IoT untuk Membangunkan aplikasi yang lebih pintar membuka lebih banyak kemungkinan. Artikel ini memperkenalkan cara menggunakan MQTT dan AMQP dua perpustakaan fungsi IoT dalam PHP, dengan harapan dapat memberikan sedikit rujukan untuk pembaca.

Atas ialah kandungan terperinci Cara menggunakan fungsi IoT dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn