Чтение файла замедляется при многократном обновлении страницы

$myfile = fopen("lastupdate.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("lastupdate.txt"));
fclose($myfile);

Это мой PHP-код в моем плагине WordPress. Когда я обновляю веб-сайт 20 раз, он загружает одну страницу примерно за 20 секунд. Без этих 3 строк кода загрузка страницы занимает всего 1 секунду.

Можете ли вы сказать мне, почему это так медленно?

Я хочу использовать текстовый файл для хранения строки (2000 символов).
В моих тестах есть только «привет мир» внутри, и он все еще занимает одну секунду. Как я могу решить эту проблему?

Большое спасибо.

2

Решение

Если вы просто хотите получить содержимое файла в строку, используйте file_get_contents () так как он имеет гораздо лучшую производительность

file_get_contents () это предпочтительный способ чтения содержимого файла в строку. Он будет использовать методы отображения памяти, если они поддерживаются вашей ОС, для повышения производительности.

В текущем контексте

<?php
$myfile = fopen("lastupdate.txt", "r") or die("Unable to open file!");
echo fread($myfile,filesize("lastupdate.txt"));
fclose($myfile);
?>

Можно заменить на ReadFile (),это прочитает файл и отправит его в браузер одной командой

<?php
readfile("lastupdate.txt");
?>

Это по сути так же, как

<?php
echo file_get_contents("lastupdate.txt");
?>

Кроме этого file_get_contents () может вызвать сбой скрипта для больших файлов, в то время как ReadFile () не будет.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector