3
在Java中,我使用Scanner逐行读取文本文件,因此内存使用率将非常低,因为一次内存中只有一行。 PHP中有类似的方法吗?在PHP中逐行读取大文件
在Java中,我使用Scanner逐行读取文本文件,因此内存使用率将非常低,因为一次内存中只有一行。 PHP中有类似的方法吗?在PHP中逐行读取大文件
使用FSEEK,FGETS
$handle = fopen("/tmp/uploadfile.txt", "r") or die("Couldn't get handle");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
// Process buffer here..
}
fclose($handle);
}
fgets($fileHandle)
是你在找什么。您使用fopen("filename.txt", "r")
获取文件句柄,然后用fclose($fileHandle)
关闭它。
如何 “逐行” 阅读它,而不是 “由缓冲区缓存”? –
这个缓冲区的东西也让我感到害怕。缓冲区是否包含多行,如果是这样,我们应该如何浏览它?我粗略地使用了这段代码,但删除了这个'4096'的参数。这也让我怀疑,如果一条线比4096更长,会发生什么 – Balmipour