array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.mqseries-get.php', 1 => 'mqseries_get', ), 'up' => array ( 0 => 'ref.mqseries.php', 1 => 'Функции mqseries', ), 'prev' => array ( 0 => 'function.mqseries-disc.php', 1 => 'mqseries_disc', ), 'next' => array ( 0 => 'function.mqseries-inq.php', 1 => 'mqseries_inq', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/mqseries/functions/mqseries-get.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PECL mqseries >= 0.10.0)
mqseries_get — MQSeries MQGET
$hConn
,$hObj
,&$md
,&$gmo
,&$bufferLength
,&$msg
,&$data_length
,&$compCode
,&$reason
The mqseries_get() (MQGET) call retrieves a message from a local queue that has been opened using the mqseries_open() (MQOPEN) call
hConn
Обработчик соединения.
Представляет открытое соединение с менеджером очередей.
hObj
Обработчик объекта.
Представляет используемый объект.
md
Дескриптор сообщения (MQMD).
gmo
Опции получения сообщения (MQGMO).
bufferLength
Ожидаемый размер буфера результата
msg
Буфер, в который будет помещено извлечённое сообщение.
data_length
Актуальный размер буфера
compCode
Код завершения.
reason
Код причины, квалифицирующий compCode.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования mqseries_get()
<?php
// Открываем соединение с MQ
mqseries_conn('WMQ1', $conn, $comp_code, $reason);
// Теперь $conn содержит ссылку на соединение
// Открываем соединение с очередью testq
mqseries_open(
$conn,
array('ObjectName' => 'TESTQ'),
MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_FAIL_IF_QUIESCING | MQSERIES_MQOO_OUTPUT,
$obj,
$comp_code,
$reason);
// Теперь $obj содержит ссылку на объект (TESTQ)
// Устанавливаем пустой дескриптор сообщения.
$mdg = array();
// Устанавливаем опции извлечения сообщения
$gmo = array('Options' => MQSERIES_MQGMO_FAIL_IF_QUIESCING | MQSERIES_MQGMO_WAIT, 'WaitInterval' => 3000);
// Получаем сообщение
mqseries_get($conn, $obj, $mdg, $gmo, 255, $msg, $data_length, $comp_code, $reason);
if ($comp_code !== MQSERIES_MQCC_OK) {
printf("GET CompCode:%d Reason:%d Text:%s<br>", $comp_code, $reason, mqseries_strerror($reason));
}
// закрываем $obj
mqseries_close($conn, $obj, MQSERIES_MQCO_NONE, $comp_code, $reason);
// закрываем соединение с менеджером
mqseries_disc($conn, $comp_code, $reason);
?>