<?php
$v_host = 'order';
$queue_name = 'goods';//队列名
//地址 端口 用户名 密码 vhost
$connection = new AMQPStreamConnection('localhost',5672,'rabbitmq','rabbitmq,$v_host);
//新建通道
$channel = $connection->channel();
//声明队列 参数:队列名、不存在则自动创建、持久化、不自动消亡
$channel->queue_declare($queue_name,false,true,false,false);
$callback = function($msg){
echo 'received'.$msg->body.'\n';
// ** 执行完成后确认消费成功
$msg->ack();
}
// ** 一次只能消费一条消息,如无执行确认消费成功则无法继续消费
$channel->basic_qos(null,1,null);
//取出消息 进行消费
$channel->basic_consume($queue_name,'',false,true,false,false,callback);
while($channel->is_open){
$channel->waite();
}
$channel->close();
$connection->close();
?>