Я новичок. У меня есть эта часть кода, которая нуждается в вашей помощи, чтобы проверить, не вызывает ли утечка памяти? Идея этого кода заключается в проверке того, не будет ли файл status.txt пустым, а его содержимое будет отображаться на веб-странице, а также проверить readmore.txt, если этот файл не пуст, он будет иметь гиперссылку на файл. Вот код, пожалуйста, помогитеЭтот код PHP вызывает утечку памяти?
$statusfile = "status.txt";
$handle = fopen($statusfile, "r");
$string = '';
while (!feof($handle)) { $string .= fgets($handle); }
fclose($handle);
$readmore_file_path = 'readmore.txt';
$handle2 = fopen($readmore_file_path, "r");
$string2 = '';
while (!feof($handle2)) { $string2 .= fgets($handle2); }
fclose($handle2);
$strTxt = 'SYSTEM STATUS<br>';
if ('' != $string)
{
$strTxt .= $string;
if ('' != $string2) { $strTxt .= '. <a href="readmore.txt"> More details</a>'; }
$strTxt .= '<br>';
echo $strTxt;
}
Я не уверен, что этот код вызывает утечку памяти. ОЗУ начинает увеличиваться каждый день после того, как у нас появился этот код. Не уверены, может ли fopen() вызвать утечку? –
@KhaHoang: Использование ОЗУ, вероятно, увеличивается, потому что этот код считывает все содержимое двух файлов в память. В зависимости от того, насколько велики файлы, это может быть значительным. Похоже, что с увеличением времени файлы становятся все больше, а это значит, что для чтения содержимого файла в память требуется больше ОЗУ. Подумайте о перезаписи, чтобы не читать файлы в памяти. См. Мое редактирование. –