eio_sendfile

Transfer data between file descriptors

Description

resource eio_sendfile(
    mixed $out_fd,
    mixed $in_fd,
    int $offset,
    int $length,
    int $pri = ?,
    callable $callback = ?,
    string $data = ?
)

eio_sendfile copies data between one file descriptor and another. See SENDFILE(2) man page for details.

Parameters

out_fd

Output stream, Socket resource, or file descriptor. Should be opened for writing.

in_fd

Input stream, Socket resource, or file descriptor. Should be opened for reading.

offset

Offset within the source file.

length

Number of bytes to copy.

pri

The request priority: EIO_PRI_DEFAULT, EIO_PRI_MIN, EIO_PRI_MAX, or null. If null passed, pri internally is set to EIO_PRI_DEFAULT.

callback

callback function is called when the request is done. It should match the following prototype:

void callback(mixed $data, int $result[, resource $req]);
data

is custom data passed to the request.

result

request-specific result value; basically, the value returned by corresponding system call.

req

is optional request resource which can be used with functions like eio_get_last_error.

data

Arbitrary variable passed to callback.

Return Values

eio_sendfile returns request resource on success, or false on failure.