php程序中使用rabbitmq消息队列的简单示例 及 rabbitmq队列所有php可用命令
<?php
require_once __DIR__ . '/vendor/autoload.php';
use PhpAmqpLib\Connection\AMQPStreamConnection;
use PhpAmqpLib\Message\AMQPMessage;
// 连接到RabbitMQ服务器
$connection = new AMQPStreamConnection('localhost', 5672, 'user', 'password', 'virtual_host');
$channel = $connection->channel();
// 声明队列
$queue = 'hello';
$channel->queue_declare($queue, false, true, false, false);
echo " [*] Waiting for messages. To exit press CTRL+C\n";
// 回调函数,当接收到消息时会被调用
$callback = function ($msg) {
echo " [x] Received ", $msg->body, "\n";
};
// 消费消息
$channel->basic_consume($queue, '', false, true, false, false, $callback);
// 等待并接收消息直到程序退出
while ($channel->is_consuming()) {
$channel->wait();
}
// 关闭连接
$channel->close();
$connection->close();
在使用RabbitMQ时,以上代码示例展示了如何在PHP中使用php-amqplib
库进行基本操作,包括连接到RabbitMQ服务器、声明队列、消费消息等。
对于RabbitMQ队列,可以使用的PHP命令包括:
- 声明队列:
$channel->queue_declare($queue, false, true, false, false);
- 消费消息:
$channel->basic_consume($queue, '', false, true, false, false, $callback);
- 关闭连接:
$channel->close();
和$connection->close();
确保在运行此代码之前已经安装了php-amqplib
库,可以使用composer require php-amqplib/php-amqplib
命令进行安装。
评论已关闭