PHP Manual
Prev |  | Next

# php_stream_copy_to_mem

(no version information, might be only in CVS)

php_stream_copy_to_mem -- Copy data from stream and into an allocated buffer

## Description

size_t php_stream_copy_to_mem ( php_stream * src, char ** buf, size_t maxlen, int persistent)

php_stream_copy_to_mem() allocates a buffer `maxlen`+1 bytes in length using pemalloc() (passing `persistent`). It then reads `maxlen` bytes from `src` and stores them in the allocated buffer.

The allocated buffer is returned in `buf`, and the number of bytes successfully read. You, the caller, are responsible for freeing the buffer by passing it and `persistent` to pefree().

If you want to copy all remaining data from the `src` stream, pass the constant `PHP_STREAM_COPY_ALL` as the value of `maxlen`.

> Note: This function will attempt to copy the data in the most efficient manner, using memory mapped files when possible.

Prev | Home | Next
php_stream_copy_to_stream | Up | php_stream_make_seekable