php AMQP 代码
时间: 2024-08-13 14:10:19 浏览: 83
PHP 中的 AMQP(Advanced Message Queuing Protocol)是一个用于在分布式系统中传递消息的协议,常用于实现可靠的消息队列。使用 PHP 进行 AMQP 编程,你需要安装和依赖 PHP 的 AMQP 扩展,或者使用像 Pheanstalk 或 RabitMQ这样的客户端库。
以下是一个简单的 PHP AMQP 示例,展示如何连接到 RabbitMQ 服务器、声明一个交换机和一个队列,并发送消息:
```php
<?php
require 'vendor/autoload.php'; // 如果使用 Composer 安装了 amqplib
use PhpAmqpLib\Connection\AMQPStreamConnection;
use PhpAmqpLib\Message\AMQPMessage;
// 连接到 RabbitMQ 服务器
$connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest');
// 声明一个新的频道
$channel = $connection->channel();
// 设置 Exchange(交换器)
$exchange_name = 'direct_exchange';
$channel->exchange_declare($exchange_name, 'direct'); // 'direct' 表示直接模式
// 声明 Queue(队列)
$queue_name = 'my_queue';
$channel->queue_declare($queue_name);
// 绑定 Queue 到 Exchange
$binding_key = 'routing_key';
$channel->queue_bind($queue_name, $exchange_name, $binding_key);
// 发送消息
$message = "Hello World!";
$message_obj = new AMQPMessage($message);
$channel->basic_publish($message_obj, '', $binding_key);
echo " [x] Sent message '$message'\n";
// 关闭频道和连接
$channel->close();
$connection->close();
?>
阅读全文