У меня есть текстовый файл, и в этом текстовом файле всего несколько строк, но он содержит около 5-10 миллионов символов. Я использую file_get_contents
, но из-за того, что он читает весь файл, производительность становится очень низкой и иногда зависает при выполнении. Есть ли более эффективный способ получить первые и последние 100 символов?
Получить первые и последние 100 символов текстового файла
Ответы (2)
попробуйте это, чтобы получить первые 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);
person
tcPeng
schedule
03.05.2017
Это именно то, что я искал. Спасибо
- person Luvias; 03.05.2017
Вы можете использовать fread
, чтобы указать количество байтов, которые должны быть читать из файла.
Например:
$handle = fopen($filename, 'r');
$contents = fread($handle, 100);
fclose($handle);
echo $contents;
Однако нельзя быть уверенным, что это будет строка из 100 символов. Это зависит от кодировки символов.
person
Jerodev
schedule
03.05.2017