(PECL amqp >= Unknown)
AMQPQueue::get — Получить следующее сообщение из очереди
Получает следующее сообщение из очереди. Если больше нет сообщений в очереди, то функция
немедленно возвращает FALSE
. Функция является неблокирующим аналогом метода AMQPQueue::consume().
В данный момент в качестве параметра flags
поддерживается только флаг AMQP_AUTOACK
. Если этот флаг указан, тогда возвращаемое сообщение будет автоматически помечено брокером как подтвержденное в тот момент, когда фреймы отправлены клиенту.
flags
Битовая маска, состоящая из поддерживаемых флагов для вызываемого метода. В данный момент поддерживается только флаг AMQP_AUTOACK
. Если это значение не указано, будет использоваться значение из amqp.auto_ack.
Экземпляр класса AMQPEnvelope, представляющий взятое из очереди сообщение, или FALSE
.
Пример #1 Пример использования AMQPQueue::get()
<?php
/* создание соединения, используя все учетные данные по умолчанию: */
$connection = new AMQPConnection();
$connection->connect();
$channel = new AMQPChannel($connection);
/* создание объекта очереди */
$queue = new AMQPQueue($channel);
//объявление очереди
$queue->declare('myqueue');
//получение сообщений
$messages = $queue->get(AMQP_AUTOACK);
echo $message->getBody();
?>