定义和用法
file - 把整个文件读入一个数组中
版本支持
PHP4 | PHP5 | PHP7 |
---|---|---|
支持 | 支持 | 支持 |
5.0.0 增加了参数 context
5.0.0 在PHP 5.0.0之前,flags参数仅包含include_path并已启用1
4.3.0 file() 开始是二进制安全的
语法
file ( string $filename [, int $flags = 0 [, resource $context ]] )
参数
- FILE_USE_INCLUDE_PATH - 在包含文件夹中查找文件。
- FILE_IGNORE_NEW_LINES - 在数组每个元素的末尾不要添加换行符
- FILE_SKIP_EMPTY_LINES - 跳过空行
参数 | 必需的 | 描述 |
---|---|---|
filename | 是 | 文件的路径。
如已启用allow_url_fopen,在此函数中, URL 可作为文件名。 |
flags | 否 | 可选参数 flags 可以是以下一个或多个常量: |
context | 否 | 使用stream_context_create() 创建的有效上下文资源。 如果您不需要自定义context,可以用NULL来忽略。 |
返回值
返回数组中的文件。 数组的每个元素对应于文件中的一行,并且换行符仍然附加。 失败时,file()返回FALSE。
// 将一个文件读入数组。本例中通过 HTTP 从 URL 中取得 HTML 源文件。
$lines = file('http://www.example.com/');
// 在数组中循环,显示 HTML 的源文件并加上行号。
foreach ($lines as $line_num => $line) {
echo "行号: #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
// 另一个例子将 web 页面读入字符串。参见 file_get_contents()。
$html = implode('', file('http://www.example.com/'));
// 从 PHP 5 开始可以使用可选标记参数
$trimmed = file('somefile.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
相关函数
readfile() - 输出文件
fopen() - 打开文件或者 URL
fsockopen() - 打开一个网络连接或者一个Unix套接字连接
popen() - 打开进程文件指针
file_get_contents() - 将整个文件读入一个字符串
include - 包含文件