PHP 手册
后退 |  | 前进

# file_get_contents

(PHP 4 >= 4.3.0, PHP 5)

file_get_contents -- 将整个文件读入一个字符串

## 说明

string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] )

和 file() 一样，只除了 file_get_contents() 把文件读入一个字符串。将在参数 offset 所指定的位置开始读取长度为 maxlen 的内容。如果失败，file_get_contents() 将返回 `FALSE`。

file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法。如果操作系统支持还会使用内存映射技术来增强性能。

> 注: 如果要打开有特殊字符的 URL （比如说有空格），就需要使用 urlencode() 进行 URL 编码。

> 注: context 参数可以用 `NULL` 来忽略。

## 更新日志

版本 | 说明
--- | ---
5.0.0 | 添加了对 context 的支持。
5.1.0 | 添加了 offset 和 maxlen 参数。

## 注释

> 注: 本函数可安全用于二进制对象。

> 提示: 如果“fopen wrappers”已经被激活，则在本函数中可以把 URL 作为文件名来使用。请参阅 fopen() 函数来获取怎样指定文件名的详细信息以及支持 URL 封装协议的列表：附录 L。

> 注: 对 context 的支持是 PHP 5.0.0 添加的。有关 context 的说明请参考参考 CXLI, Stream Functions。

警告
当使用 SSL 时，Microsoft IIS 将违反协议不发送 close_notify 标记就关闭连接。PHP 将在到达数据尾端时报告 "SSL: Fatal Protocol Error"。要绕过此问题，应将 error_reporting 级别降低为不包括警告。PHP 4.3.7 及更高版本可以在当使用 https:// 封装协议打开流的时候检测出有此问题的 IIS 服务器并抑制警告。如果使用 fsockopen() 来创建一个 ssl:// 套接字，则需要自己检测并抑制警告信息。

## 参见

file()
fgets()
fread()
readfile()
file_put_contents()
stream_get_contents()

后退 | 起点 | 前进
file_exists | 上一级 | file_put_contents