(PECL sam >= 0.2.0)
SAMConnection::peekAll — Lectura de uno o más mensajes de una cola, sin eliminarlo de la cola.
$target
[, array $properties
] )
target
La identidad de la cola de la cual se van a leer los mensajes.
properties
Un array asociativo opcional de propiedades, que describen otros parámetros para controlar la operación de lectura.
Nombre de la propiedad | Valores posibles |
---|---|
SAM_CORRELID | Este es el identificador de correlación de los mensajes a leer. Es retornado típicamente por una petición "send". |
SAM_MESSAGEID | Este es el identificador del mensaje a leer. |
Este método devuelve un array de objetos SAMMessage o FALSE
en caso
de error.
Ejemplo #1 Recuperación de todos los mensajes de una cola sin eliminarlos
<?php
$msgArray = $conn->peekAll('queue://receive/test');
if ($msgArray) {
foreach ( $msgArray as $key => $msg) {
echo "Message $key: body = $msg->body\n";
}
} else {
echo "PeekAll failed ($conn->errno) $conn->error";
}
?>
Ejemplo #2 Recuperación de todos los mensajes de una cola correspondientes a un identificador de correlación
<?php
$msgArray = $conn->peekAll('queue://receive/test', array(SAM_CORRELID => $correlId ));
if ($msgArray) {
foreach ( $msgArray as $key => $msg) {
echo "Message $key: body = $msg->body\n";
}
} else {
echo "PeekAll failed ($conn->errno) $conn->error";
}
?>