Подправить функцию
Страницы: 1
Подправить функцию, хелп
Код парсера:

Код

<?
set_time_limit(0);


if (preg_match_all('~</h1>">(.*?)<div>~i', $content, $matches))

{
   print_r($matches[1]);
}

/* получаем содержимое нужной нам страницы в переменную $content 
$content = file_get_contents("http://vefire.ru/letter/1/");

// Определяем позицию строки, до которой нужно все отрезать (используем функцию strpos()).
$pos = strpos($content, '</h1>');

/*Отрезаем все, что идет до нужной нам позиции
(функция substr в данном случае принимает два параметра: строка для
обработки и //номер позиции. Функция вернет строку, НАЧИНАЯ с указанной позиции) */
$content = substr($content, $pos);

// Точно таким же образом находим позицию второй строки
$pos = strpos($content, '<div>');

// Отрезаем нужное количество символов от нулевого
$content = substr($content, 0, $pos);

// выводим полученную строку.
echo $content;

$fps = fopen("1.html","w+");
fwrite($fps,$content);
fclose($fps);

?>



Вобщем, по идее,

if (preg_match_all('[/h1]', $content, $matches))

{
print_r($matches[1]);
}

должен обходить всю страницу... но smile:rolleyes: этого не происходит smile:wall: ... подскажите pls как еще можно цикл представить....
Изменено: Константин Ерыгин - 22 Марта 2011 19:57

Бесплатная контекстная реклама

По моему с позициями вы что то намудрили
Код
$open = @file_get_contents($newsurl, "r");
$masktitle = "#<div>(.*?)</div>#is"
preg_match_all($masktitle,$open,$title);
$name = $title[1][0];
Спасибо!!!.. Завтра посмотрю

..) но как мне посоветовал всеми ув. Денис smile;) smile:) " иди На* www.free-lance.ru/ )) либо Библиотеку из 20 томов книг приобрести! smile:mad: .. smile:o
Программирование довольно простая штука... и если не планируете (или даже планируете) стать мега крутым... 20 томов - не обязательны. Достаточно интернета и желания учится. Но если начинать с нуля то лучше одну-две книжки почитать.
Код
$open = @file_get_contents('http://vefire.ru/letter/1/', "r");
$masktitle = "#</h1>(.*?)<div>#is";

preg_match_all($masktitle,$open,$title);
$name = $title[1][0];

print $name;


... Все бы хорошо) но выводит только одно описание канала... В чем соль?
Вот так работает, пользуйтесь.

Код
<?php
   function parser_title ($url) {
   
      $text = file_get_contents("$url");
      preg_match_all('/<h1>(.*?)<\/a>/is', $text, $link);
      
      $i = 0;
      while ($i != 11) {
         echo strip_tags($link[0][$i]).'<br>';
         $i++; 
      }
   }
      
   parser_title('http://vefire.ru/letter/1/'); 
?>
Рисунок
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
18:24 Вопрос к веб мастерам 
18:06 Закрывать или индексировать категории? 
17:55 молодой сайт в топе 
17:42 Апдейт Яндекса 09.12.2016 
17:40 Смена адреса админ панели WordPress 
17:40 Дизайн сайтов качественно, недорого! 
17:26 10 самых влиятельных факторов ранжирования 
18:01 Рерайт 30 р за 1000 символов без пробелов 
17:50 Продам хороший, доходный сайт с ТИЦ 40 
17:34 Стоимость сайта 
15:53 Недвижимость без посредников 
15:45 ​ Услуга в соц.сетях: поиск аккаунтов по номеру телефона или email 
14:45 [Продажа] скрипт CPA/CPS-партнерской программы 
13:50 Услуги по рассылки спама Вконтакте 
18:22 Про счетчики 
18:16 Новых страниц нет, а переходы есть 
18:03 Нужно ли закрывать рекламные блоки? 
15:14 Uber запретил заниматься сексом во время поездки 
14:55 Mobytize и Vipaff приглашают на мероприятие IT Nature Party! 17-19 августа (Киев) 
14:01 Навеянные форумом картинки 
13:37 у меня запрос моего сайта на втором месте