EventBuffer 类

(PECL event >= 1.5.0)

介绍

EventBuffer 代表 Libevent 的“evbuffer”,一个用于缓冲 I/O 的实用功能。

事件缓冲区旨在普遍适用于执行缓冲网络 I/O 的“缓冲”部分。

类概要

class EventBuffer {
/* 常量 */
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;
/* 属性 */
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()
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
}

属性

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() 方法将位置向前移动到指定的字节数(而不是设置绝对位置)。

目录

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top