Имеется список ссылок, по одной на каждой строке. Как его можно обработать, чтобы после каждой третьей ссылки ставился тег <br> ?
-Vladimir- Самый простой вариант PHP: <?php $i = 1; while($links) { echo $links['link']; if($i%3 == 0) echo '<br />'; $i++; }
DarkElf Да пох, я первое, что пришло в голову накидал. -Vladimir- Хех. А "список ссылок"-то в чем? В массиве?
-Vladimir- Ну так получай их из файла, забивай в массив и крути его. В чем проблема? Как прокрутить массив - показано выше.
PHP: <?php $links=file("base.txt"); while($links) { echo $links['link']; if($i%3 == 0) echo '<br>'; $i++; } ?> Генерит бесконечный список.[/code]
PHP: <? if ($f = fopen("text.txt","r")) echo 'file open'; else echo 'not open'; $i = 1; while ($links = fgets($f)) { echo $links; echo '<br>'; if ($i%3 == 0) echo '<br>'; $i++; }
Спасибо! PHP: <?php $f = fopen("text.txt","r"); $i = 1; while ($links = fgets($f)) { echo $links; if ($i%3 == 0) echo '<br>'; $i++; } ?> Как весь результат в одну переменную обратить?
не понял, это нужно чтоли: PHP: <?php $f = fopen("text.txt","r"); $i = 1; ob_start(); while ($links = fgets($f)) { echo $links; if ($i%3 == 0) echo '<br>'; $i++; } $list = ob_get_contents(); ob_end_clean(); ?>
Как ещё сделать, чтобы обрабатываемый контент поступал не $f = fopen("text.txt","r"); а ввиде переденной? То есть, $text = "Строка 1 Строка 2 Строка 3 ...";
Я не то имел ввиду. Нужно обработать просто переменную $text, а не файл. Теперь данные в переменной содержатся.
Блин, -Vladimir-, что вы выдумываете. Откуда $text ещё взялась? PHP: <? $f = fopen("text.txt","r"); $i = 1; ob_start(); while ($links = fgets($f)) { echo '<br>'; echo $links; if ($i%3 == 0) echo '<br>'; $i++; } $list = ob_get_contents(); ob_end_clean(); В $list находится всё, что вам нужно.
Теперь хочу по-другому сделать. Разметка текста из переменной: после каждого третьего тега </a> поставить тег <br>.