AMQPQueue
PHP Manual

AMQPQueue::consume

(PECL amqp >= Unknown)

AMQPQueue::consumeConsume mensajes de una cola

Descripción

public void AMQPQueue::consume ( callable $callback [, int $flags = AMQP_NOPARAM ] )

El bloqueo de la función que va a recuperar el mensaje siguiente de la cola cuando esté disponible y hacerlo pasar a la llamada de retorno.

Parámetros

callback

Una función de llamada de retorno para que el mensaje de consumo será pasada. La función debe aceptar como mínimo un parámetro, un objeto AMQPEnvelope, y un segundo parámetro opcional AMQPQueue de que el mensaje fue consumido.

The AMQPQueue::consume() will not return the processing thread back to the PHP script until the callback function returns FALSE.

flags

Una máscara de bits de cualquiera de las flags: AMQP_NOACK.

Errores/Excepciones

Lanza una AMQPChannelException si el canal no está abierto.

Lanza una AMQPConnectionException si se perdió la conexión con el corredor.

Valores devueltos

Ejemplos

Ejemplo #1 Ejemplo de AMQPQueue::consume()

<?php

/* Crea una conección utilizando todas las credenciales por defecto: */
$connection = new AMQPConnection();
$connection->connect();

$channel = new AMQPChannel($connection);

/* Crea un objeto de la cola */
$queue = new AMQPQueue($channel);

// Declara la cola
$queue->declare('myqueue');

$i 0;
function 
processMessage($envelope$queue) {
   global 
$i;
   echo 
"Message $i: " $envelope->getBody() . "\n";
   
$i++;
   if (
$i 10) {
       
// Bail after 10 messages
       
return false;
    }
}

// Consume los mensajes en la cola
$queue->consume("processMessage");

?>


AMQPQueue
PHP Manual