2013-04-21 40 views
0

我有一些非常大的文本文件 - 每个100MB包含一个单行字符串(只有1行)。我想从每个字节中提取最后的xx字节/字符。我知道如何通过在字符串中读取它们然后通过strpos()或substr()来进行搜索,但是这需要大量的RAM,这对于这样的小动作来说是不可取的。PHP获取文本文件的最后xx个字节?

在执行搜索之前,有没有其他方法可以提取文本文件的最后50个字节/字符?

谢谢!

+0

你可以考虑使用https://code.google.com/p/php-tail/ – Ejaz 2013-04-21 09:59:58

回答

2

您可以使用fseek

$fp = fopen('somefile.txt', 'r'); 
fseek($fp, -50, SEEK_END); // It needs to be negative 
$data = fgets($fp, 50); 
+0

你得有正确;该数字需要为负数:http://php.net/manual/en/function.fseek.php – 2013-04-21 10:04:45

相关问题