PHP Conference Nagoya 2025

mqseries_strerror

(PECL mqseries >= 0.10.0)

mqseries_strerror結果コード (MQRC) に対応するエラーメッセージを返す

説明

mqseries_strerror(int $reason): string

mqseries_strerror() は、結果コードに対応するメッセージを返します。

パラメータ

reason

compCode の原因を表すコード。

戻り値

原因コードのメッセージを文字列で返します。

例1 mqseries_strerror() の例

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

上の例の出力は以下となります。

Connx CompCode:2 Reason:2059 Text:Queue manager not available for connection.

add a note

User Contributed Notes 1 note

up
-1
j dot romero dot 1214 at gmail dot com
11 years ago
There might be some error codes missing from the package depending on the MQ client version you are using. To prevent further versions from returning an empty error message simply use a function such as:

<?php
//... wrapper class ...

public function getErrorMessage ($errorCode) {
$errorString = mqseries_strerror($errorCode);
if (!empty(
$errorString)) {
return
$errorString;
} else {
switch (
$errorCode) {
// insert missing codes here
case 2537:
return
"Channel is not available.";
case
2538:
return
"Host is not available.";
case
2539:
return
"Channel configuration error.";
case
2540:
return
"Channel name is unknown.";
default:
return
"Unexpected error ({$errorCode})";
}
}
}

// ... wrapper class ...
?>
To Top