A classe EventBuffer

(PECL event >= 1.5.0)

Introdução

EventBuffer representa o "evbuffer" do Libevent, uma funcionalidade de utilitário para E/S em buffer.

Os buffers de eventos devem ser geralmente úteis para fazer a parte do "buffer" de E/S de rede com buffer.

Resumo da 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;
/* Propriedades */
public readonly int $length;
public readonly int $contiguous_space;
/* Métodos */
public add( string $data ): bool
public addBuffer( EventBuffer $buf ): bool
public appendFrom( EventBuffer $buf , int $len ): int
public __construct()
public copyout( string &$data , int $max_bytes ): int
public drain( int $len ): bool
public expand( int $len ): bool
public freeze( bool $at_front ): bool
public lock(): void
public prepend( string $data ): bool
public pullup( int $size ): string
public read( int $max_bytes ): string
public read( mixed $fd , int $howmuch ): int
public readLine( int $eol_style ): string
public search( string $what , int $start = -1 , int $end = -1 ): mixed
public searchEol( int $start = -1 , int $eol_style = EventBuffer::EOL_ANY ): mixed
public substr( int $start , int $length = ?): string
public unfreeze( bool $at_front ): bool
public unlock(): bool
public write( mixed $fd , int $howmuch = ?): int
}

Propriedades

length

O número de bytes armazenados em um buffer de eventos.

contiguous_space

O número de bytes armazenados contiguamente na frente do buffer. Os bytes em um buffer podem ser armazenados em vários pedaços separados de memória; a propriedade retorna o número de bytes atualmente armazenados no primeiro pedaço.

Constantes pré-definidas

EventBuffer::EOL_ANY

O fim da linha é qualquer sequência de qualquer número de caracteres de retorno de carro e avanço de linha. Este formato não é muito útil; ele existe principalmente para compatibilidade com versões anteriores.

EventBuffer::EOL_CRLF

O final da linha é um retorno de carro opcional, seguido por um avanço de linha. (Em outras palavras, é um "\r\n" ou um "\n" .) Este formato é útil na análise de protocolos de Internet baseados em texto, uma vez que os padrões geralmente prescrevem um "\r\n" terminador de linha, mas clientes não conformes às vezes dizem apenas "\n" .

EventBuffer::EOL_CRLF_STRICT

O final de uma linha é um único retorno de carro, seguido por um único avanço de linha. (Isso também é conhecido como "\r\n" . Os valores ASCII são 0x0D 0x0A ).

EventBuffer::EOL_LF

O final de uma linha é um único caractere de avanço de linha. (Isso também é conhecido como "\n" . O valor ASCII é 0x0A .)

EventBuffer::PTR_SET

Sinalizador usado como argumento do método EventBuffer::setPosition() Se este sinalizador for especificado, o ponteiro de posição será movido para uma posição absoluta dentro do buffer.

EventBuffer::PTR_ADD

O mesmo que EventBuffer::PTR_SET , exceto que este sinalizador causa ao método EventBuffer::setPosition() para mover a posição para frente até o número especificado de bytes (em vez de definir a posição absoluta).

Table of Contents