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éralement utiles pour réaliser la partie buffer d'un réseau I/O bufferisé.

Synopsis de la classe

class EventBuffer {
/* Constantes */
const int EOL_ANY = 0;
const int EOL_CRLF = 1;
const int EOL_CRLF_STRICT = 2;
const int EOL_LF = 3;
const int PTR_SET = 0;
const int PTR_ADD = 1;
/* Propriétés */
public readonly int $length;
public readonly int $contiguous_space;
/* Méthodes */
public function add( string $data ): bool
public function addBuffer( EventBuffer $buf ): bool
public function appendFrom( EventBuffer $buf , int $len ): int
public function __construct()
public function copyout( string &$data , int $max_bytes ): int
public function drain( int $len ): bool
public function enableLocking(): void
public function expand( int $len ): bool
public function freeze( bool $at_front ): bool
public function lock(): void
public function prepend( string $data ): bool
public function prependBuffer( EventBuffer $buf ): bool
public function pullup( int $size ): string
public function read( int $max_bytes ): string
public function read( mixed $fd , int $howmuch ): int
public function readLine( int $eol_style ): string
public function search( string $what , int $start = -1 , int $end = -1 ): mixed
public function searchEol( int $start = -1 , int $eol_style = EventBuffer::EOL_ANY ): mixed
public function substr( int $start , int $length = ?): string
public function unfreeze( bool $at_front ): bool
public function unlock(): bool
public function write( 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 contiguë 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 nombres représentant un retour chariot 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 chariot 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 chariot, suivi par une simple nouvelle ligne (aussi connu comme "\r\n". Les valeurs ASCII sont 0x0D 0x0A).

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ée à 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'octets spécifié (au lieu de définir une position absolue).

Sommaire

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top