Copia dados de um fluxo para outro

# stream_copy_to_stream

(PHP 5, PHP 7, PHP 8)

stream_copy_to_stream — Copia dados de um fluxo para outro

### Descrição

function stream_copy_to_stream(
resource `$from`,
resource `$to`,
?int `$length` = `null`,
int `$offset` = 0
): int|false

Faz uma cópia dos dados com um comprimento em bytes definido em `length`, a partir da posição atual (ou a partir da posição `offset`, se especificada) do fluxo `from` para o fluxo `to`. Se `length` for `null`, todo o conteúdo remanescente em `from` será copiado.

### Parâmetros

`from`

  O fluxo de origem

`to`

  O fluxo de destino

`length`

  Máximo de bytes a copiar. Por padrão todos os bytes restantes são copiados.

`offset`

  O deslocamento a partir do qual deve-se começar a copiar os dados

### Valor Retornado

Retorna a contagem total de bytes copiados, ou `false` em caso de falha.

### Registro de Alterações

Versão | Descrição
--- | ---
8.0.0 | `length` agora pode ser nulo.

### Exemplos

Exemplo #1 Um exemplo de stream_copy_to_stream()

    <?php
    $src = fopen('http://www.example.com', 'r');
    $dest1 = fopen('first1k.txt', 'w');
    $dest2 = fopen('remainder.txt', 'w');

    echo stream_copy_to_stream($src, $dest1, 1024) . " bytes copiados para first1k.txt\n";
    echo stream_copy_to_stream($src, $dest2) . " bytes copiados para remainder.txt\n";

    ?>

### Veja Também

- copy() - Copia arquivo

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open