Transfer data between file descriptors

- « eio_seek

- eio_set_max_idle »

- PHP Manual
- Eio Functions
- Transfer data between file descriptors

# eio_sendfile

(PECL eio >= 0.0.1dev)

eio_sendfile — Transfer data between file descriptors

### Description

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

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.