用php读取纯文本文件

Dom*_*oSL 43 php

我的服务器中有一个包含此信息的文本文件:

Data1
Data2
Data3
.
.
.
DataN
Run Code Online (Sandbox Code Playgroud)

如何使用PHP从文本文件中读取所有信息(逐行)?

Pay*_*oad 76

<?php

$fh = fopen('filename.txt','r');
while ($line = fgets($fh)) {
  // <... Do your work with the line ...>
  // echo($line);
}
fclose($fh);
?>
Run Code Online (Sandbox Code Playgroud)

这将为您提供逐行阅读..阅读php.net/fgets上有关Mac终止问题的说明.


zzz*_*Bov 19

http://php.net/manual/en/function.file-get-contents.php
http://php.net/manual/en/function.explode.php

$array = explode("\n", file_get_contents($filename));

这实际上不会逐行读取它,但它会得到一个可以逐行使用的数组.有很多选择.

  • 我认为这将用一个非常大的数据集"爆炸"你的记忆 (8认同)

Nat*_*ivi 16

这个适合我

$array = explode("\n", file_get_contents('file.txt'));
Run Code Online (Sandbox Code Playgroud)


Ull*_*kar 9

$filename = "fille.txt";
$fp = fopen($filename, "r");

$content = fread($fp, filesize($filename));
$lines = explode("\n", $content);
fclose($fp);
print_r($lines);
Run Code Online (Sandbox Code Playgroud)

在此代码中,文件的完整内容将复制到变量中$content,然后将其拆分为一个数组,其中包含文件中的每个换行符.


sub*_*ito 8

您还可以使用file生成数组:

$array = file('/path/to/text.txt');
Run Code Online (Sandbox Code Playgroud)


Dai*_*kai 5

W3Schools 是您的朋友:http://www.w3schools.com/php/func_filesystem_fgets.asp

这里: http: //php.net/manual/en/function.fopen.php有更多关于 fopen 的信息,包括模式是什么。

W3Schools 怎么说:

<?php
$file = fopen("test.txt","r");

while(! feof($file))
  {
  echo fgets($file). "<br />";
  }

fclose($file);
?> 
Run Code Online (Sandbox Code Playgroud)

fopen 打开文件(在本例中为 test.txt,模式为“r”,表示只读并将指针放置在文件的开头)

while 循环测试检查它是否位于文件末尾 (feof),如果不是,则调用 fgets 获取指针所在的当前行。

继续执行此操作,直到到达文件末尾,然后关闭文件。