Класс EventBuffer

(PECL event >= 1.5.0)

Введение

EventBuffer представляет событийный буфер библиотеки Libevent - вспомогательный функционал для буферезированного ввода/вывода.

Буферы событий обычно полезны для организации "буферной" части буферизированного сетевого ввода/вывода.

Обзор классов

EventBuffer {
/* Константы */
const integer EOL_ANY = 0 ;
const integer EOL_CRLF = 1 ;
const integer EOL_CRLF_STRICT = 2 ;
const integer EOL_LF = 3 ;
const integer PTR_SET = 0 ;
const integer PTR_ADD = 1 ;
/* Свойства */
public readonly int $length ;
public readonly int $contiguous_space ;
/* Методы */
public add ( string $data ) : bool
public addBuffer ( EventBuffer $buf ) : bool
public appendFrom ( EventBuffer $buf , int $len ) : int
public __construct ( void )
public copyout ( string &$data , int $max_bytes ) : int
public drain ( int $len ) : bool
public enableLocking ( void ) : void
public expand ( int $len ) : bool
public freeze ( bool $at_front ) : bool
public lock ( void ) : void
public prepend ( string $data ) : bool
public prependBuffer ( EventBuffer $buf ) : 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 ( void ) : bool
public write ( mixed $fd [, int $howmuch ] ) : int
}

Свойства

length

Количество байт в буфере событий.

contiguous_space

Количество байтов, хранящихся смежно в передней части буфера. Байты в буфере могут располагаться в разных кусках памяти; свойство возвращает количество байт находящихся, в текущий момент, в первом куске.

Предопределенные константы

EventBuffer::EOL_ANY

Конец строки является любой последовательностью любого числа символов перевода строки и возврата каретки. Этот формат не особо полезен и существует только для обеспечения обратной совместимости.

EventBuffer::EOL_CRLF

Конец строки является последовательностью из необязательного возврата каретки и перевода строки. (Другими словами либо "\r\n" либо "\n" .) Этот формат полезен при разборе текстовых Интернет-протоколов, поскольку стандарты обычно предписывают обозначать конец строки как "\r\n", но многие клиенты используют просто "\n" .

EventBuffer::EOL_CRLF_STRICT

Конец строки является последовательностью из символов возврата каретки и перевода строки. (Т.е. "\r\n" . ASCII-коды 0x0D 0x0A ).

EventBuffer::EOL_LF

Конец строки является обозначается символом перевода строки. (т.е. "\n" . ASCII-код 0x0A .)

EventBuffer::PTR_SET

Флаг используется как аргумент метода EventBuffer::setPosition(). Если флаг установлен, то указатель позиции перемещается на абсолютную позицию в буфере.

EventBuffer::PTR_ADD

То же, что и EventBuffer::PTR_SET , за исключением, что флаг указывает методу EventBuffer::setPosition() переместить позицию вперед на указанное количество байт.

Содержание