©
This document uses PHP Chinese website manual Release
(PECL sam >= 0.2.0)
SAMConnection::peekAll — Read one or more messages from a queue without removing it from the queue.
$target
[, array $properties
] )
target
The identity of the queue from which messages should be peeked.
properties
An optional associative array of properties describing other parameters to control the peek operation.
Property name | Possible values |
---|---|
SAM_CORRELID | This is the target correlation id string of messages to be peeked. This would typically have been returned by a "send" request. |
SAM_MESSAGEID | This is the message id string of a message which is to be peeked. |
This method returns an array of SAMMessage objects or FALSE
if an error
occurs.
Example #1 Retrieve all messages in a queue without removing them
<?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 " ;
}
?>
Example #2 Retrieve all messages from a queue with a matching correlation id
<?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 " ;
}
?>