PHP: 使用 fread() 从 http 资源读取部分文件

PHP: read part of file with fread() from http resource

我有以下 PHP 代码:

$fp=fopen("http://myurl.com/very_big_file.txt",'r');
$feed=fread($fp,16);

它工作正常,但我有一些疑问。它真的只读取前 16 个字节而不下载整个文件吗?

string fread ( resource $handle , int $length )

fread() 从 handle 引用的文件指针中读取最多 length 个字节。满足以下条件之一即停止阅读:

  1. 已读取长度字节
  2. 已到达 EOF(文件末尾)
  3. 数据包可用或发生套接字超时(对于网络流)<-- 这行说明了。
  4. 如果流是缓冲读取的并且它不代表普通文件,则最多一次读取最多等于块大小(通常为 8192)的字节数;根据之前缓冲的数据,返回数据的大小可能大于块大小。