[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: мне надо в конце абзацев вывести "абзац 1", "абзац
Лис3
и так:
есть у меня файл "война и мир.txt". Файл большой.
мне надо в конце абзацев вывести "абзац 1", "абзац 2" и т д.

$s=str_replace("\n", '<br />', $s); - не катит. Потому что в конце каждого абзаца будет один и тот же текст.



Спустя 22 минуты, 52 секунды (25.11.2011 - 17:43) Zerstoren написал(а):
nl2br() вам в помощь

Спустя 1 день, 7 часов, 19 минут, 7 секунд (27.11.2011 - 01:03) Лис3 написал(а):
Цитата (Zerstoren @ 25.11.2011 - 14:43)
nl2br() вам в помощь

не подходит.
В конце первого абзаца надпись "абзац 1".
В конце второго абзаца надпись "абзац 2".
В конце тертого абзаца надпись "абзац 3".
...
В конце Н - ого абзаца надпись "абзац Н".

Спустя 1 день, 19 часов, 15 минут, 53 секунды (28.11.2011 - 20:18) Лис3 написал(а):
ну вот представте:
в тексте надо
первое "\n" заменить на "\n 1 \n",
второе "\n" заменить на "\n 2 \n"
трете "\n" заменить на "\n 3 \n"
и так далие, до конца текста.
При этом общую длину текста и количество абзацев в ней я не знаю.

Спустя 1 минута, 47 секунд (28.11.2011 - 20:20) Winston написал(а):
А как ты определяешь абзац ?

Спустя 18 часов, 38 минут (29.11.2011 - 14:58) Лис3 написал(а):
там где код нашол \n, там и абзац...

Спустя 1 час, 31 минута, 2 секунды (29.11.2011 - 16:29) Winston написал(а):
Попробуй так
$file = file_get_contents('file.txt');
echo preg_replace_callback("#\n#s", function(){static $i = 1; return '<br/>Абзац ' . $i++ . '<br/>';}, $file);

В PHP >= 5.3 будет работать, иначе нужно create_function использовать вместо function()

Спустя 3 дня, 11 минут, 22 секунды (2.12.2011 - 16:41) Лис3 написал(а):
1. $file может быть оочень большое. Это может быть причиной ошибки?
2. Как бы я не писал и что бы я не делал я получаю
Requires argument 2, '<b>Абзец №1</b><br> ', to be a valid callback in E:\wamp\www\book\admin\redakt.php on line 9


Спустя 2 дня, 4 часа, 2 минуты, 14 секунд (4.12.2011 - 20:43) Winston написал(а):
Цитата (Лис3 @ 2.12.2011 - 15:41)
Как бы я не писал и что бы я не делал я получаю

Цитата (Winston @ 29.11.2011 - 15:29)
В PHP >= 5.3 будет работать

Тогда перепиши так
preg_replace_callback("#\n#s", create_function('', 'static $i = 1; return "<br/>Абзац " . $i++ . "<br/>";'), $file);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.