SAMConnection::peekAll

(PECL sam >= 0.2.0)

SAMConnection::peekAll Read one or more messages from a queue without removing it from the queue

说明

SAMConnection::peekAll ( string $target [, array $properties ] ) : array

参数

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";
   }

?>