データをあるストリームから別のストリームにコピーする

# stream_copy_to_stream

(PHP 5, PHP 7, PHP 8)

stream_copy_to_stream — データをあるストリームから別のストリームにコピーする

### 説明

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

現在の位置（あるいはもし指定されていれば `offset` の位置）から最大 `length` バイトのデータを `from` から `to` にコピーします。もし `length` が `null` の 場合は、`from` にある残りすべてのデータが コピーされます。

### パラメータ

`from`

  コピー元のストリーム。

`to`

  コピー先のストリーム。

`length`

  コピーする最大バイト数。 デフォルトでは、残りの全てのデータがコピーされます。

`offset`

  コピーを開始する位置。

### 戻り値

コピーされたバイト数を返します。失敗した場合に `false` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | `length` は、nullable になりました。

### 例

例1 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) . " バイトが first1k.txt にコピーされました\n";
    echo stream_copy_to_stream($src, $dest2) . " バイトが remainder.txt にコピーされました\n";

    ?>

### 参考

- copy() - ファイルをコピーする

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