当前位置: 首页> 最新文章列表> 使用PHP "file" 函数读取文件内容并转为数组的完整指南

使用PHP "file" 函数读取文件内容并转为数组的完整指南

M66 2025-06-18

使用PHP "file" 函数读取文件内容并转为数组的完整指南

在PHP中,有许多实用的文件操作函数,其中 "file" 函数是最常用的一种。它能够轻松读取文件内容,并将每一行转换为数组中的一个元素。

函数原型

函数的基本原型如下:

array file ( string $filename [, int $flags = 0 [, resource $context ]])
    

如何使用 "file" 函数

首先,我们需要一个文件来演示这个函数的用法。我们创建一个名为 "sample.txt" 的文本文件,并写入一些内容:

Hello, world!
This is a sample file.
It is used for testing file functions in PHP.
    

接下来,使用 "file" 函数来读取这个文件,并将每一行的内容存储到数组中:

$fileContent = file("sample.txt");
print_r($fileContent);
    

执行这段代码时,输出结果如下:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

如上所示,"file" 函数成功将文件内容转化为一个数组,每一行文本成为数组的一个元素。

去除换行符

需要注意的是,"file" 函数默认会保留每行的换行符。如果您希望去除这些换行符,可以使用 "FILE_IGNORE_NEW_LINES" 参数:

$fileContent = file("sample.txt", FILE_IGNORE_NEW_LINES);
print_r($fileContent);
    

执行后,打印结果如下:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

可以看到,换行符已经被成功移除。

跳过空行

此外,您还可以通过设置 "flags" 参数,进一步控制文件的读取方式。例如,使用 "FILE_SKIP_EMPTY_LINES" 参数来跳过文件中的空行:

$fileContent = file("sample.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
print_r($fileContent);
    

执行后,输出结果为:

Array
(
    [0] => Hello, world!
    [1] => This is a sample file.
    [2] => It is used for testing file functions in PHP.
)
    

如您所见,所有空行都已被跳过,数组中只保留了非空行。

总结

PHP的 "file" 函数为我们提供了便捷的方式来读取文件并将其转化为数组。通过传递不同的参数,我们能够灵活控制是否去除换行符以及是否跳过空行。这使得我们在处理文件时更为高效。