(PHP 5, PHP 7, PHP 8)
stream_get_contents — 残りのストリームを文字列に読み込む
$stream
, ?int $length
= null
, int $offset
= -1): string|false
file_get_contents() と似ていますが、
stream_get_contents() は既にオープンしている
ストリームリソースに対して操作を行います。そして、指定した
offset
から始まる最大
length
バイトのデータを取得して文字列に
保存します。
stream
(resource)ストリームリソース(例: fopen() の返す値)。
length
(int)
読み込む最大バイト数。デフォルトは null
(バッファの残りのデータをすべて読み込む)。
offset
(int)読み込みを開始する前に移動する位置。負の数を指定した場合は移動が発生せず、 現在位置から読み込みを開始します。
文字列を返します。失敗した場合に false
を返します。
バージョン | 説明 |
---|---|
8.0.0 |
length は、nullable になりました。
|
例1 stream_get_contents() の例
<?php
if ($stream = fopen('http://www.example.com', 'r')) {
// オフセット 10 から開始して、残りのすべてのページを表示します
echo stream_get_contents($stream, -1, 10);
fclose($stream);
}
if ($stream = fopen('http://www.example.net', 'r')) {
// 最初の 5 バイトを表示します
echo stream_get_contents($stream, 5);
fclose($stream);
}
?>
注意: この関数はバイナリデータに対応しています。