CloudCastle Curl

EventStreamParser
in package

FinalYes

Инкрементальный разбор потока `text/event-stream`.

Принимает тело по чанкам произвольной длины (строка может разорваться посередине, включая пару \r\n) и возвращает готовые события. Держит в памяти только недочитанную строку и поля текущего события, поэтому поток любой длины разбирается с постоянным расходом памяти.

Table of Contents

Methods

lastEventId()  : string
Идентификатор последнего события (для заголовка `Last-Event-ID`).
push()  : array<int, ServerSentEvent>
Принять очередной чанк потока.
retry()  : int|null
Последняя рекомендованная сервером задержка переподключения.

Methods

lastEventId()

Идентификатор последнего события (для заголовка `Last-Event-ID`).

public lastEventId() : string
Return values
string —

идентификатор (может быть пустым)

push()

Принять очередной чанк потока.

public push(string $chunk) : array<int, ServerSentEvent>
Parameters
$chunk : string

фрагмент тела

Return values
array<int, ServerSentEvent> —

события, завершённые этим чанком

retry()

Последняя рекомендованная сервером задержка переподключения.

public retry() : int|null
Return values
int|null —

миллисекунды или null

On this page

Search results