当我们需要读取一个文件的内容时,如果想要把每一行的数据都读入到一个数组中,我们可以使用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读取文件内容到数组的方法
基础教程推荐
- ubuntu14.04 安装apache+php7.2* 2023-09-02
- PHP的Trait机制原理与用法分析 2023-03-03
- Laravel中使用Queue的最基本操作教程 2022-10-04
- PHP利用递归函数实现无限级分类的方法 2023-01-04
- Laravel jwt 多表(多用户端)验证隔离的实现 2023-03-18
- php7 错误处理机制修改实例分析 2023-04-19
- PHP利用ueditor实现上传图片添加水印 2023-06-26
- PHP Redis扩展无法加载的问题解决方法 2023-02-05
- Yii 框架入口脚本示例分析 2023-04-19
- php微信公众号开发之图片回复 2022-11-23