php-doc-en/reference/sam/functions/SAM-Connection-receive.xml
Dave Renshaw 66b884c24c *** empty log message ***
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@225233 c90b9560-bf6c-de11-be94-00142212c4b1
2006-12-18 16:24:31 +00:00

163 lines
4.6 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.4 $ -->
<refentry id='function.SAM-Connection-receive'>
<refnamediv>
<refname>SAMConnection::receive()</refname>
<refpurpose>
Receive a message from a queue or subscription.
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<classsynopsis>
<ooclass><classname>SAMConnection</classname></ooclass>
<methodsynopsis>
<type>SAMMessage</type><methodname>receive</methodname>
<methodparam><type>string</type><parameter>target</parameter></methodparam>
<methodparam choice='opt'><type>array</type><parameter>properties</parameter></methodparam>
</methodsynopsis>
</classsynopsis>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>target</parameter></term>
<listitem>
<para>
The identity of the queue, topic or subscription from which to receive the message.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>properties</parameter></term>
<listitem>
<para>
An optional associative array of properties describing other parameters to control the receive operation.
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>Property name</entry>
<entry>Possible values</entry>
</row>
</thead>
<tbody>
<row>
<entry>SAM_CORRELID</entry>
<entry>Used to request selection of the message to receive based upon the correlation id string of the message.</entry>
</row>
<row>
<entry>SAM_MESSAGEID</entry>
<entry>Used to request selection of the message to receive based upon the message id string of the message.</entry>
</row>
<row>
<entry>SAM_WAIT</entry>
<entry>
Timeout value in milliseconds to control how long the request should block waiting to receive a message before returning with a failure
if no message is available on the queue or topic. The default value is 0 meaning wait indefinitely and should be used with caution
as the request may wait until the overall PHP script processing time limit has expired if no message becomes available.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
This method returns a SAMMessage object or &false; if an error occurs.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Receiving a message from a queue</title>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive('queue://receive/test');
if (!$msg) {
// The receive failed!
echo "Receive failed ($conn->errno) $conn->error";
}
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Receiving a message from a queue with options</title>
<para>
In this example the SAM_CORRELID option is used to specify a correlation id string to be used to identify the message to receive. A wait timeout of 10 seconds is also specified.
</para>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive('queue://receive/test', array(SAM_CORRELID => $token, SAM_WAIT => 10000));
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Receiving a message from a subscription</title>
<para>
In this example we show how to receive a message from a subscription id.
</para>
<programlisting role="php">
<![CDATA[
<?php
$msg = $conn->receive($subscriptionName);
if (!$msg) {
// The receive failed!
echo "Receive failed ($conn->errno) $conn->error";
}
?>
]]>
</programlisting>
<para>
Please note that $subscriptionName is a subscription id returned from an earlier subscribe call.
</para>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->