La classe EventBuffer

(PECL event >= 1.5.0)

Introduction

La classe EventBuffer représente "evbuffer" de Libevent, un utilitaire pour les I/O bufferisés.

Les buffers d'événements sont générallement utiles pour réaliser la partie buffer d'un réseau I/O bufferisé.

Synopsis de la classe

classEventBuffer {
constintEOL_ANY = 0;
constintEOL_CRLF = 1;
constintEOL_LF = 3;
constintPTR_SET = 0;
constintPTR_ADD = 1;
publicreadonlyint$length;
publicreadonlyint$contiguous_space;
publicadd(string$data): bool
publicappendFrom(EventBuffer$buf, int$len): int
public__construct()
publiccopyout(string&$data, int$max_bytes): int
publicdrain(int$len): bool
publicexpand(int$len): bool
publicfreeze(bool$at_front): bool
publiclock(): void
publicprepend(string$data): bool
publicpullup(int$size): string
publicread(int$max_bytes): string
publicread(mixed$fd, int$howmuch): int
publicreadLine(int$eol_style): string
publicsearch(string$what, int$start = -1, int$end = -1): mixed
publicsearchEol(int$start = -1, int$eol_style = EventBuffer::EOL_ANY): mixed
publicsubstr(int$start, int$length = ?): string
publicunfreeze(bool$at_front): bool
publicunlock(): bool
publicwrite(mixed$fd, int$howmuch = ?): int
}

Propriétés

length

Le nombre d'octets stockés dans un buffer d'événement.

contiguous_space

Le nombre d'octets stockés de façon contigues au début du buffer. Les octets dans un buffer peuvent être stockés dans plusieurs parties séparées de la mémoire ; cette propriété retourne le nombre d'octets actuellement stockés dans la première partie.

Constantes pré-définies

EventBuffer::EOL_ANY

La fin de ligne est une séquence de nombre représentent un retour charriot et une nouvelle ligne. Ce format n'est pas très utile ; il existe encore seulement pour des raisons de compatibilité ascendante.

EventBuffer::EOL_CRLF

La fin de ligne est un retour charriot optionnel, suivi par une nouvelle ligne. (En d'autres termes, c'est soit "\r\n", soit "\n"). Ce format est utile pour analyser les protocoles Internet basés sur du texte ; le standard veut qu'on utilise "\r\n" mais quelques clients fournissent seulement "\n".

EventBuffer::EOL_CRLF_STRICT

La fin de ligne est un simple retour charriot, suivant par une simple nouvelle ligne (aussi connu comme "\r\n". Les valeurs ASCII sont 0x0D0x0A).

EventBuffer::EOL_LF

La fin de ligne est un simple caractère de nouvelle ligne (aussi connu comme "\n". La valeur ASCII est 0x0A).

EventBuffer::PTR_SET

Drapeau utilisé comme argument de la méthode EventBuffer::setPosition(). Si ce drapeau est spécifié, la position du pointeur est déplacé à une position absolue du buffer.

EventBuffer::PTR_ADD

Identique à EventBuffer::PTR_SET, sauf que ce drapeau fait que la méthode EventBuffer::setPosition() se déplace à une position en arrière par rapport au numéro d'octers spécifié (au lieu de définir une position absolue).

Sommaire

To Top