当我们需要读取一个文件的内容时,如果想要把每一行的数据都读入到一个数组中,我们可以使用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读取文件内容到数组的方法 - Python技术站