CakeFest 2024: The Official CakePHP Conference

mqseries_put

(PECL mqseries >= 0.10.0)

mqseries_putMQSeries MQPUT

説明

mqseries_put(
    resource $hConn,
    resource $hObj,
    array &$md,
    array &$pmo,
    string $message,
    resource &$compCode,
    resource &$reason
): void

The mqseries_put() (MQPUT) は、メッセージをキューあるいは配送リストにおきます。 キューあるいは配送リストを事前にオープンしておく必要があります。

パラメータ

hConn

接続ハンドル。

このハンドルは、キューマネージャへの接続を表します。

hObj

オブジェクトハンドル。

このハンドルは、使用するオブジェクトを表します。

md

メッセージ記述子 (MQMD)。

pmo

Put メッセージのオプション (MQPMO)。

message

実際にキューに置くメッセージ。

compCode

完了コード。

reason

compCode の原因を表すコード。

戻り値

値を返しません。

例1 mqseries_put() の例

<?php
// キューマネージャへの接続をオープンします
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) を指すようになります

// メッセージ記述子の配列を設定します。MQSeries のリファレンスマニュアルを参照ください
$md = array(
'Version' => MQSERIES_MQMD_VERSION_1,
'Expiry' => MQSERIES_MQEI_UNLIMITED,
'Report' => MQSERIES_MQRO_NONE,
'MsgType' => MQSERIES_MQMT_DATAGRAM,
'Format' => MQSERIES_MQFMT_STRING,
'Priority' => 1,
'Persistence' => MQSERIES_MQPER_PERSISTENT);

// Put メッセージのオプションを設定します
$pmo = array('Options' => MQSERIES_MQPMO_NEW_MSG_ID|MQSERIES_MQPMO_SYNCPOINT);

// 'Ping' というメッセージをキューに置きます
mqseries_put($conn, $obj, $md, $pmo, 'Ping', $comp_code, $reason);

if (
$comp_code !== MQSERIES_MQCC_OK) {
printf("put CompCode:%d Reason:%d Text:%s<br>\n", $comp_code, $reason, mqseries_strerror($reason));
}

// オブジェクトへの参照 $obj を閉じます
mqseries_close($conn, $obj, MQSERIES_MQCO_NONE, $comp_code, $reason);

// キューマネージャとの接続を切断します
mqseries_disc($conn, $comp_code, $reason);

?>

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top