English | 简体中文 | 繁體中文
查询

mqseries_set()函数—用法及示例

「 设置 WebSphere MQ 的消息属性 」


函数名:mqseries_set()

适用版本:PHP 4 >= 4.0.5, PHP 5, PHP 7

函数说明:mqseries_set() 函数用于设置 WebSphere MQ 的消息属性。

语法:mqseries_set(resource $hconn, resource $hobj, int $selectorcount, array &$selectors, int $intattrcount, array &$intattrs, int $charattrlength, array &$charattrs, int &$compcode, int &$reason)

参数:

  • $hconn:连接标识符,由 mqseries_conn() 函数返回。
  • $hobj:对象标识符,由 mqseries_open() 或 mqseries_begin() 函数返回。
  • $selectorcount:整数,表示选择器数组的长度。
  • $selectors:选择器数组,用于指定要设置的属性。每个选择器是一个整数,它代表一个特定的属性。
  • $intattrcount:整数,表示整型属性数组的长度。
  • $intattrs:整型属性数组,用于指定要设置的整型属性的值。
  • $charattrlength:整数,表示字符属性数组中每个元素的长度。
  • $charattrs:字符属性数组,用于指定要设置的字符属性的值。
  • $compcode:返回的 MQSeries 的完成码。
  • $reason:返回的 MQSeries 的原因码。

返回值:如果成功设置了消息属性,则返回 TRUE。如果失败,则返回 FALSE。

示例:

<?php
// 连接到 WebSphere MQ
$conn = mqseries_conn("QMGR1", $compcode, $reason);
if ($compcode !== MQSERIES_MQCC_OK) {
    echo "连接失败,原因码:{$reason}\n";
    exit;
}

// 打开队列
$options = MQSERIES_MQOO_INPUT_AS_Q_DEF | MQSERIES_MQOO_OUTPUT;
$hobj = mqseries_open($conn, "QUEUE1", $options, $compcode, $reason);
if ($compcode !== MQSERIES_MQCC_OK) {
    echo "打开队列失败,原因码:{$reason}\n";
    mqseries_disc($conn, $compcode, $reason);
    exit;
}

// 设置消息属性
$selectorcount = 1;
$selectors = [MQSERIES_MQIA_PRIORITY];
$intattrcount = 1;
$intattrs = [5];
$charattrlength = 0;
$charattrs = [];
mqseries_set($conn, $hobj, $selectorcount, $selectors, $intattrcount, $intattrs, $charattrlength, $charattrs, $compcode, $reason);
if ($compcode !== MQSERIES_MQCC_OK) {
    echo "设置消息属性失败,原因码:{$reason}\n";
}

// 关闭队列和连接
mqseries_close($conn, $hobj, MQSERIES_MQCO_NONE, $compcode, $reason);
mqseries_disc($conn, $compcode, $reason);
?>

以上示例中,首先使用 mqseries_conn() 函数连接到 WebSphere MQ,然后使用 mqseries_open() 函数打开队列。接着,使用 mqseries_set() 函数设置消息属性,这里设置了消息的优先级为 5。最后,使用 mqseries_close() 函数关闭队列,使用 mqseries_disc() 函数断开与 WebSphere MQ 的连接。

请注意,示例中的参数值仅供参考,实际使用时需要根据具体情况进行调整。

补充纠错
上一个函数: mqseries_strerror()函数
下一个函数: mqseries_put1()函数
热门PHP函数
分享链接