|
|
|
|
|
для: Webmaster-X
(21.09.2006 в 23:07)
| | Можно
<?php
// Открываем файл
$fd = fopen("text.txt", "r");
if($fd)
{
// Построчно читаем файл, пока не встретится
// конец файла
while(!feof($fd))
{
// Читаем текущую строку
$str = fgets($fd, 10000);
}
// Закрываем файл
fclose($fd);
}
?>
|
На каждой итерации цикла читается текущая строка файла $str, при этом в каждый момент времени строка только одна и память соответственно резервируется только для этой строки. | |
|
|
|
|
|
|
|
для: cheops
(21.07.2006 в 23:33)
| | а можна не большой пример | |
|
|
|
|
|
|
|
для: Webmaster-X
(21.07.2006 в 13:26)
| | Trianon хочет сказать, что на хостинге под UNIX с настроенным PHP - это не пройдёт, там под весь скрипт отводится 8, реже 16 мегабайт и работать с такими большими файлами потребуется другими методами, например, связкой функций fopen() + fgets(). | |
|
|
|
|
|
|
|
для: Webmaster-X
(21.07.2006 в 13:26)
| | Ошибаетесь. Выводите Вы 10 строк. А считываете - всё. | |
|
|
|
|
|
|
|
для: Trianon
(21.07.2006 в 13:21)
| | я ж не всё считываю а всего 10 строк
а если всё ставил
set_time_limit(0);
и счал всё правда вес страницы был ужасный | |
|
|
|
|
|
|
|
для: Webmaster-X
(21.07.2006 в 12:59)
| | Странно, что у Вас php по "Out of memory" не загнулся. На операции =file("47Mb.txt") | |
|
|
|
|
|
|
|
для: Trianon
(21.07.2006 в 12:42)
| | >47 мегабайт? Ну-ну...
а что странного?
я открыл в ручную копировал и вставлял
токо вместо txt я использую DAT | |
|
|
|
|
|
|
|
для: Webmaster-X
(21.07.2006 в 11:24)
| | 47 мегабайт? Ну-ну... | |
|
|
|
|
|
|
|
для: Webmaster-X
(21.07.2006 в 11:24)
| | вид text.txt
d::s::з::34::
d::s::г::456::
d::s::d::56::
d::s::s::123::
d::s::sff::786::
d::s::sf::23::
d::s::df::12::
d::s::sd::3546::
d::s::f::878::
d::s::s::35::
d::s::п::87::
d::s::и::98::
d::s::df::453::
|
я считую данные
$f=file("./text.txt");
for($i=0;$i<count($f);$i++){
list($check,$rdate,$rauthor,$count)=split("::",$f[$i]);
}
|
$count - надо отсортировать
но чтото у меня не получается | |
|
|
|
|
|
|
|
для: cheops
(21.07.2006 в 10:11)
| | С считкой последних 10 строк всё замечательно работает я спецально загнал 47 мегабайт (16416 строк) и проверил-сбоев нет.
спасибо.
а по хитам щас проверю | |
|
|
|
|