Stomp::readFrame

stomp_read_frame

(PECL stomp >= 0.1.0)

Stomp::readFrame -- stomp_read_frameLit le prochain message

Description

Style orienté objet (méthode) :

publicStomp::readFrame(string$class_name = "stompFrame"): stompframe

Style procédural :

stomp_read_frame(resource$link): array

Lit le prochain message. Il est possible d'instancier un objet d'une classe spécifique, et de passer les paramètres au constructeur de cette classe.

Liste de paramètres

link

Style procédural uniquement : L'identifiant stomp retourné par la fonctionstomp_connect().

class_name

Le nom de la classe à instancier. Si ce paramètre n'est pas spécifié, un objet stompFrame est retourné.

Valeurs de retour

Note:

Un en-tête de transaction peut être spécifié, indiquant que la confirmation des messages doit faire partie de la transaction.

Historique

VersionDescription
Stomp 0.4.0 Le paramètre class_name a été ajouté.

Exemples

Exemple #1 Style orienté objet

<?php


try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(
StompException $e) {
die(
'Connection failed: ' . $e->getMessage());
}


$stomp->subscribe('/queue/foo');


var_dump($stomp->readFrame());


unset($stomp);

?>

Résultat de l'exemple ci-dessus est similaire à :

object(StompFrame)#2 (3) { ["command"]=> string(7) "MESSAGE" ["headers"]=> array(5) { ["message-id"]=> string(41) "ID:php.net-55293-1257226743606-4:2:-1:1:1" ["destination"]=> string(10) "/queue/foo" ["timestamp"]=> string(13) "1257226805828" ["expires"]=> string(1) "0" ["priority"]=> string(1) "0" } ["body"]=> string(3) "bar" }

Exemple #2 Style procédural

<?php


$link = stomp_connect('ssl://localhost:61612');


if (!$link) {
die(
'Connection failed: ' . stomp_connect_error());
}


stomp_subscribe($link, '/queue/foo');


$frame = stomp_read_frame($link);


stomp_close($link);

?>

Résultat de l'exemple ci-dessus est similaire à :

array(3) { ["command"]=> string(7) "MESSAGE" ["body"]=> string(3) "bar" ["headers"]=> array(6) { ["transaction"]=> string(2) "t1" ["message-id"]=> string(41) "ID:php.net-55293-1257226743606-4:3:-1:1:1" ["destination"]=> string(10) "/queue/foo" ["timestamp"]=> string(13) "1257227037059" ["expires"]=> string(1) "0" ["priority"]=> string(1) "0" } }
To Top