Reads data from the data queue.
mixed i5_dtaq_receive (resource
queue, [, string/int operator, string key ]
[, int timeout])
Parameters
queue |
Resource received from dtaq_open |
operator |
"EQ" "GT" "LT" "GE" "LE" |
key |
Key value to look for |
timeout |
Timeout value in seconds |
Return
False if error or timeout. The data read from the queue otherwise.
I5_ERR_PHP_TYPEPARAM |
262 |
Type of element x in parameter -1 must be y. Type z was provided. |
I5_ERR_PHP_NBPARAM_BAD |
263 |
Wrong parameter count |
I5_ERR_PHP_DTAQ_BADKEY |
309 |
The key is not correct. |
I5_ERR_PHP_NOT_DTAQ_KEY |
313 |
No key defined. |
Example
/* Connexion */
$Hdlcon = i5_connect($adresse,$user, $mdp, $jobName);
/* Ouverture de la DATA QUEUE */
$description = array("Name"=>"DATA", "Type"=>I5_TYPE_CHAR, "Length"=>"50");
$data = i5_dtaq_prepare("*LIBL/DTAQ_FIFO", $description);
if ($data == false){
$erreur = i5_error();
print_r ($erreur);
}
$msg='';
$lecture = false;
/* Ecriture de la data queue */
if (isset($_POST["write"])) {
$donnees = $_POST["data"];
$ret = i5_dtaq_send($data, "", $donnees);
if ($ret) {
$msg="Write, done.";
}
}
/* Lecture dans la data queue */
if (isset($_POST["read"])) {
$rec = i5_dtaq_receive($data);
if (is_bool($rec)) {
$erreur = i5_error();
if ($erreur[0]==14) {
$msg="Data Queue is empty ";
} else {
print_r($erreur);
}
} else {
$lecture = true;
}
}