Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> деление файла 
:(
    Опции темы
mr.fox
Дата 31.10.2005, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 13.3.2005
Где: Ирландия

Репутация: -1
Всего: 2



у меня есть большой файл, скажем в нем 3000 строк. его надо прочитать и по 500 строк положить в новые файлы. вот что у меня получилось а дальше я застрял
Код

$handle=fopen('1.txt','r');
if ($handle) {
   while (!feof($handle)) {
       $buffer = fgets($handle);
    
   }
   fclose($handle);
}

Кто знает, помогите!
PM MAIL WWW ICQ   Вверх
Рейкин
Дата 31.10.2005, 01:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 23.11.2003
Где: Баку, Азербайджан

Репутация: 1
Всего: 1



Код

<?
$open=file("text.txt");
$titcount=count($opentitle);
for ($n=$titcount-1; $n>=$titcount-500; $n--)
    {
    list($a,$s,$d,$f,$g,$h)=split("***",$opentitle[$n]); // считываем
    $str = $str."$a***$s***$d***$f***$g***$h\r\n"; // создаём содержимое будущего файла
    }        
    
    $fp = fopen ("text1.txt", "w"); // я бы создал заранее файлы (например, text1.txt, text2.txt...), права 666 не забываем.
    fputs($fp,$str);
    fclose($fp);
    }
///
for ($n=$titcount-501; $n>=$titcount-1000; $n--)  // здесь берём новый отсек
    {
    list($a,$s,$d,$f,$g,$h)=split("***",$opentitle[$n]);
    $str1 = $str1."$a***$s***$d***$f***$g***$h\r\n"; // название строки тоже меняем. А то продолжит наполнение
    }        
    
    $fp = fopen ("text2.txt", "w"); // не забываем поменять название файла, а то можно перезаписать предыдущий
    fputs($fp,$str1); // и здесь не забываем
    fclose($fp);
    }
... // и так далее, проблем быть у вас не должно.
?>


Спецы могут назвать это отстойным способом, но сработать должен.

Взял отсчёт строк в обратном порядке (редактировал имеющийся скрипт). Можете сами поменять, чтоб с 0 и выше.

Это сообщение отредактировал(а) Рейкин - 31.10.2005, 01:05
PM WWW   Вверх
Mal Hack
Дата 1.11.2005, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



ИМХО, проще - читаем через file и делаем цикл по строкам.
Делаем внутренний счетчик файлов K например.
В цикле делаем проверку if ( $i % 500 == 0 ) увеличиваем K
Ну и закрываем старый файл и открываем следующий для записи.

PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0431 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.