dongren7374 2013-08-01 15:55
浏览 175
已采纳

RabbitMq:使用PHP AMQP在Exchange上设置AMQP_AUTODELETE标志

I'm trying to set AMQP_AUTODELETE flag on my exchange using AMQPExchange::setFlags ( int $flags )

http://php.net/manual/en/amqp.constants.php http://www.php.net/manual/en/amqpexchange.setflags.php

does not work... :(

$exchange = new \AMQPExchange(new \AMQPChannel($this->_connection));

$exchange->setName($name);
$exchange->setType(AMQP_EX_TYPE_FANOUT);

$exchange->setFlags(AMQP_AUTODELETE);
$exchange->declare();

$exchange->getFlags() returns 0 instead of 16 (integer value of AMQP_AUTODELETE).

But it works when I set AMQP_DURABLE flag the same way, $exchange->getFlags() returns 2.

Has anyone found a solution for this ? Thanks!!!

  • 写回答

2条回答 默认 最新

  • doutu3352 2013-08-01 15:59
    关注

    AMQP_AUTODELETE flag can only be used for AMQPQueue. See the AMQPExchange::setFlags manual page for valid flags.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?