获取文本文件的前100个字符

时间:2017-05-03 11:33:08

标签: php performance readfile

我有一个文本文件,在该文本文件中,只有几行,但包含大约5-10万个字符。我正在使用file_get_contents但因为它读取整个文件所以性能变得非常慢并且在执行时有时会挂起。是否有更有效的方法来获得第一个和最后100个字符?

2 个答案:

答案 0 :(得分:3)

试试这个前100个字符:

$fp = fopen('test.txt', 'r');
$data = fread($fp, 100);
echo $data;
fclose($fp);

并获得最后100个字符:

$fp = fopen('test.txt', 'r');
fseek($fp, -100, SEEK_END);
$data = fread($fp, 100);
echo $data;
fclose($fp);

答案 1 :(得分:2)

您可以使用fread指定必须从文件中读取的字节数。

例如:

$handle = fopen($filename, 'r');
$contents = fread($handle, 100);
fclose($handle);
echo $contents;

但是,无法确定这是一个包含100个字符的字符串。这取决于字符编码。