Swoole Buffer (Depreciation)

4.x is outdated, please check the latest version 22.x


Latest version: pecl install openswoole-22.1.2

This class or function have been deprecated.

Swoole Buffer enable developers managing memory like C language without worrying about memory allocation and release.

The memory allocated by Swoole\Buffer is not shared memory and can not be accessed by multiple processes.

Example

<?php
$buffer = new Swoole\Buffer();
$buffer->append(str_repeat("A", 10));
$buffer->append(str_repeat("B", 20));
$buffer->append(str_repeat("C", 30));
var_dump($buffer);
Swoole\Buffer->__construct(int $size = 128)

Fixed size memory blocks allocation.

Swoole\Buffer->append(string $data)

Append the string or binary data at the end of the memory buffer and return the new size of memory allocated.

Swoole\Buffer->substr(int $offset, int $length = -1, bool $remove = false)

Read data from the memory buffer based on offset and length. Or remove data from the memory buffer.

If $remove is set to be true and $offset is set to be 0, the data will be removed from the buffer. The memory for storing the data will be released when the buffer object is deconstructed.

Swoole\Buffer->clear()

The memory buffer will be reset.

Swoole\Buffer->expand(int $new_size)

Expand the size of memory buffer.

Swoole\Buffer->write(int $offset, string $data)

Write data to the memory buffer. The memory allocated for the buffer will not be changed.

Swoole\Buffer->read(int $offset, int $length)

Read data from the memory buffer based on offset and length.

Swoole\Buffer->recycle()

Release the memory to OS which is not used by the memory buffer.

Last updated on August 31, 2022