PHP Conference Nagoya 2025

Stomp::abort

stomp_abort

(PECL stomp >= 0.1.0)

Stomp::abort -- stomp_abortОтменяет выполнение текущей транзакции

Описание

Объектно-ориентированный стиль (метод):

public Stomp::abort(string $transaction_id, array $headers = ?): bool

Процедурный стиль:

stomp_abort(resource $link, string $transaction_id, array $headers = ?): bool

Отменяет выполнение текущей транзакции.

Список параметров

link

Только для процедурного стиля: идентификатор соединения stomp, полученный из stomp_connect().

transaction_id

Транзакция, которую нужно прервать.

headers

Ассоциативный массив, содержащий дополнительные заголовки (пример: receipt).

Возвращаемые значения

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка.

Примеры

Пример #1 Объектно-ориентированный стиль

<?php

/* подключение */
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(
StompException $e) {
die(
'Ошибка соединения: ' . $e->getMessage());
}

/* начало транзакции */
$stomp->begin('t1');

/* отправка сообщения в очередь */
$stomp->send('/queue/foo', 'bar', array('transaction' => 't1'));

/* откат транзакции */
$stomp->abort('t1');

/* разрыв подключения */
unset($stomp);
?>

Пример #2 Процедурный стиль

<?php

/* подключение */
$link = stomp_connect('tcp://localhost:61613');

/* проверка подключения */
if (!$link) {
die(
'Ошибка соединения: ' . stomp_connect_error());
}

/* начало транзакции */
stomp_begin($link, 't1');

/* отправка сообщения в очередь 'foo' */
stomp_send($link, '/queue/foo', 'bar', array('transaction' => 't1'));

/* откат транзакции */
stomp_abort($link, 't1');

/* разрыв подключения */
stomp_close($link);

?>

Примечания

Подсказка

Stomp асинхронен по своей сути. Синхронная связь может быть реализована добавлением receipt-заголовка. Это заставит методы ничего не возвращать, пока сервер не подтвердит получение сообщения или не будет превышено время ожидания сообщения.

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top