Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Работа со строками
 
 автор: neadekvat   (09.05.2009 в 23:03)   письмо автору
 
 

Вынужден снова обратиться за помощью
Итак, есть файл (пусть file1.txt) с текстом, поделенным на абзацы
Скрипт должен создать новый файл (пусть file2.txt), в который пойдет весь текст с первого файла, но с такими изменениями:
Абзацы надо поделить таким образом:
Разделы, в них страницы, в которых абзацы. Сложность в куче циклов. Итак, получается надо как-то объединить такие условия:
Создаем Раздел1, на следующей строке пишем страница1, после чего берем первую строку и проверяем, не будет ли ее длинна больше, чем разрешено на одной странице (допустим, 100; условие ставится где-нибудь в начале, в переменной. С первым абзацом это правило нарушаться не будет никогда), затем берем вторую строку и проверяем, не длиньше ли сумма первой и второй строки допустимой длины страницы. Если длиньше, то пишем Страница2 (на следующей строке) и эту строку. Берем третью, проверяем сумму второй (для страницы 2 - она уже первая), … и тд
Да, еще, когда количество страниц достигает ста, надо создать раздел2 и так далее, пока не закончатся строк
Можете ли помочь, подсказать что-то?

  Ответить  
 
 автор: neadekvat   (10.05.2009 в 00:24)   письмо автору
 
   для: neadekvat   (09.05.2009 в 23:03)
 

Вопрос изменился, но чтобы вы об этом узнали, пишу в ответ:
У меня есть цикл:

<? while($s fgets($f)) {
      
$i++;
      echo 
'Страница'.$i.'<br>';
      echo 
$s.'<br>';
  } 
?>

Работает отлично. Но мне надо немного другое. Вставлять строчки в "страницу" надо до тех пор, пока сумма длин строк не привысит максимальное количество символов (пусть 100). А затем продолжить то же самое уже на новой "странице".
Естесственно, первая строка уже убивает такую возможность. Подскажите, пожалуйста, как можно реализовать то, что я описал?

  Ответить  
 
 автор: neadekvat   (10.05.2009 в 01:13)   письмо автору
 
   для: neadekvat   (10.05.2009 в 00:24)
 

Порой молчание - золото, право)
Посидел и сам, все-таки, сделал))

Я думаю, тему лучше удалить, чтобы не засорять форум

  Ответить  
 
 автор: Николай2357   (10.05.2009 в 01:22)   письмо автору
 
   для: neadekvat   (10.05.2009 в 01:13)
 

Хорошо сформулированный вопрос - почти ответ)))

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования