downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

SAMConnection->remove> <SAMConnection->peekAll
Last updated: Fri, 13 Nov 2009

view this page in

SAMConnection->receive

(PECL sam >= 0.1.0)

SAMConnection->receive メッセージをキューあるいは購読から取得する

説明

SAMConnection
SAMMessage receive ( string $target [, array $properties ] )

パラメータ

target

メッセージを取得するキュー、トピックあるいは購読の識別子。

properties

オプションの連想配列で、受信操作を制御するパラメータを指定します。

プロパティ名 とりうる値
SAM_CORRELID メッセージの相関 ID 文字列にもとづいて、 受信するメッセージを選択するために使用します。
SAM_MESSAGEID メッセージのメッセージ ID 文字列にもとづいて、 受信するメッセージを選択するために使用します。
SAM_WAIT タイムアウトをミリ秒で指定します。この時間までメッセージの受信を待ち続け、 キューやトピックにメッセージがなかった場合に失敗とします。デフォルト値は 0 で、永遠に待ち続けます。この使用には注意が必要です。 メッセージが存在しない場合、PHP スクリプト自体が期限切れになるまで実行し続けます。

返り値

このメソッドは SAMMessage オブジェクトを返します。 エラーが発生した場合は FALSE を返します。

例1 キューからのメッセージの取得

<?php
$msg 
$conn->receive('queue://receive/test');

if (!
$msg) {
  
// 受信に失敗しました!
  
echo "Receive failed ($conn->errno$conn->error";
}
?>

例2 オプションを指定して、キューからのメッセージの取得

この例では SAM_CORRELID オプションを使用して、 受信するメッセージを表すための相関 ID を指定します。 また、タイムアウトを 10 秒に指定します。

<?php

$msg 
$conn->receive('queue://receive/test', array(SAM_CORRELID => $tokenSAM_WAIT => 10000));

?>

例3 購読からのメッセージの取得

この例では、購読 ID からメッセージを受信する方法を示します。

<?php
$msg 
$conn->receive($subscriptionName);

if (!
$msg) {
  
// 受信に失敗しました!
  
echo "Receive failed ($conn->errno$conn->error";
}
?>

$subscriptionName は、事前のコールで取得した購読 ID であることに注意しましょう。



add a note add a note User Contributed Notes
SAMConnection->receive
There are no user contributed notes for this page.

SAMConnection->remove> <SAMConnection->peekAll
Last updated: Fri, 13 Nov 2009
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites