(PECL mqseries >= 0.10.0)
mqseries_get — MQSeries MQGET
$hConn
,$hObj
,&$md
,&$gmo
,&$bufferLength
,&$msg
,&$data_length
,&$compCode
,&$reason
mqseries_get() lit un message dans une queue locale, qui a été ouverte avec la fonction mqseries_open().
hConn
Gestionnaire de connexion.
Cette ressource représente la connexion au manager de queues.
hObj
Gestionnaire d'object.
Cette ressource représente l'objet à utiliser.
md
Ressource de message (MQMD).
gmo
Options de message
bufferLength
Taille attendue du buffer de résultat
msg
Buffer contenant le message lu depuis l'objet.
data_length
Taille réelle du buffer
compCode
Code de complétion.
reason
La raison qui qualifie le compCode.
Aucune valeur n'est retournée.
Exemple #1 Exemple avec mqseries_get()
<?php
// Ouvre la connexion vers le gestionnaire de file d'attente
mqseries_conn('WMQ1', $conn, $comp_code, $reason);
// $conn contient maintenant la référence vers la connexion au gestionnaire de file d'attente.
// Ouvre la connexion vers la file d'attente 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 contient maintenant la référence vers l'objet (TESTQ)
// Définit un message de descripteur vide.
$mdg = array();
// Définit les options de récupération des messages
$gmo = array('Options' => MQSERIES_MQGMO_FAIL_IF_QUIESCING | MQSERIES_MQGMO_WAIT, 'WaitInterval' => 3000);
// Récupère les messages depuis la file d'attente
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));
}
// Ferme la référence vers l'objet $obj
mqseries_close($conn, $obj, MQSERIES_MQCO_NONE, $comp_code, $reason);
// Déconnecte du gestionnaire de file d'attente
mqseries_disc($conn, $comp_code, $reason);
?>