stream_get_contents

(PHP 5, PHP 7, PHP 8)

stream_get_contents读取资源流到一个字符串

说明

stream_get_contents(resource $handle, int $maxlength = -1, int $offset = -1): string

file_get_contents() 一样,但是 stream_get_contents() 是对一个已经打开的资源流进行操作,并将其内容写入一个字符串返回。 返回的内容取决于 maxlength 字节长度和 offset 指定的起始位置。

参数

handle (resource)

一个资源流(例如 fopen() 操作之后返回的结果)

maxlength (integer)

需要读取的最大的字节数。默认是-1(读取全部的缓冲数据)。

offset (integer)

在读取数据之前先查找指定的偏移量。如果这个数字是负数,就不进行查找,直接从当前位置开始读取。

返回值

返回一个字符串 或者在失败时返回 false.

更新日志

版本 说明
5.1.0 增加参数 offset

范例

示例 #1 stream_get_contents() 例子

<?php

if ($stream fopen('http://www.example.com''r')) {
    
// print all the page starting at the offset 10
    
echo stream_get_contents($stream, -110);

    
fclose($stream);
}


if (
$stream fopen('http://www.example.net''r')) {
    
// print the first 5 bytes
    
echo stream_get_contents($stream5);

    
fclose($stream);
}

?>

注释

注意: 此函数可安全用于二进制对象。

参见

  • fgets() - 从文件指针中读取一行
  • fread() - 读取文件(可安全用于二进制文件)
  • fpassthru() - 输出文件指针处的所有剩余数据