У меня есть большое количество файлов в каталоге, и я использую php для чтения его в строку. Например, путь к файлу выглядит так: filerootdir/dir1/dir2/dir3/dir4/dir5/dir6/file.txt
,
У меня есть миллион таких текстовых файлов. Основываясь на другом параметре, php будет читать текстовый файл и отображать его как часть веб-страницы. Я сейчас тестирую программу php на Windows 7 Pro. Когда абсолютный путь к файлу короткий, например, filerootdir/dir1/file.txt
, это довольно быстро, чтобы загрузить. Но когда абсолютный путь длинный, он ОЧЕНЬ медленный. Мне интересно, есть ли лучшее решение для этой проблемы.
Я тестирую свою программу под Windows WAMP, но позже она будет перенесена в LAMP. Будет ли загружаться программа загрузки файлов быстрее на серверах Linux? Может ли это быть проблемой операционной системы Windows?
Код, который я использую, выглядит следующим образом:
if (file_exists($filePath.".html")) {
$code = file_get_contents($filePath.".html");
}
Спасибо большое!
Вы можете подумать о хранении данных в базе данных — если вы используете это количество записей, особенно если это небольшие файлы, база данных, вероятно, будет более эффективной. Прежде чем делать это, прочитайте индексы — они могут получить нужную запись из миллиардов за крошечную долю секунды.
Других решений пока нет …