php读取文件内容到数组的方法

当我们需要读取一个文件的内容时,如果想要把每一行的数据都读入到一个数组中,我们可以使用PHP提供的file函数。file函数会把文件中的每一行读取为一个数组中的元素。

当我们需要读取一个文件的内容时,如果想要把每一行的数据都读入到一个数组中,我们可以使用PHP提供的file函数。file函数会把文件中的每一行读取为一个数组中的元素。

具体的操作方法如下:

1.读取文件到数组

$array = file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

该函数会将文件内容按行读到一个数组中,忽略每一行末尾的换行符和空行,并返回一个包含文件中所有行的一维数组。

参数解释:

  • $filename:要读取的文件名。
  • FILE_IGNORE_NEW_LINES:表示忽略每行末尾的换行符。
  • FILE_SKIP_EMPTY_LINES:表示忽略文件中的空行。

2.遍历数组输出

读取到的数组可以直接用foreach进行遍历输出,例如:

foreach($array as $line) {
    echo $line."<br/>";
}

这样就可以把读取的文件内容逐行输出到网页上了。如果数据是以tab字符或其他特殊字符分隔的,可以使用explode()函数对每行进行分隔,例如:

foreach($array as $line) {
    $data = explode("\t", $line);
    foreach($data as $value) {
        echo $value." ";
    }
    echo "<br/>";
}

示例说明

以下为两个示例,分别读取文件内容到数组并进行遍历输出:

示例1:

假设我们有一个文件test.txt,内容如下:

apple
banana
orange

下面的代码可以把每行的数据都读入到一个数组中:

$array = file("test.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

读取到的数组内容如下:

array(
    [0] => 'apple',
    [1] => 'banana',
    [2] => 'orange'
)

下面的代码可以把数组中的内容逐行输出到网页上:

foreach($array as $line) {
    echo $line."<br/>";
}

输出到网页上的内容如下:

apple
banana
orange

示例2:

假设我们有一个文件test2.txt,内容如下(注:数据以tab字符分隔):

张三    20    男
李四    25    女
王五    30    男

下面的代码可以把每行的数据都读入到一个数组中,并对每行进行分隔:

$array = file("test2.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach($array as $line) {
    $data = explode("\t", $line);
    foreach($data as $value) {
        echo $value." ";
    }
    echo "<br/>";
}

输出到网页上的内容如下:

张三 20 男
李四 25 女
王五 30 男

这就是PHP读取文件内容到数组的方法。

本文标题为:php读取文件内容到数组的方法

基础教程推荐