Подправить функцию
Страницы: 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)
Новые темыОбъявленияСвободное общение
00:41 Показ резервных объявлений 
00:39 2017-01-16 АП Яндекса. 
00:29 Апдейт яндекс 18.01.2017 
23:49 Букварикс: бесплатная программа для быстрого поиска ключевых слов 
23:09 ЧПУ ссылки: актуальны на 2017 год? 
19:39 Работа с графикой [Бесплатно] 
18:47 Сохраните Ваше время и деньги с помощью нашего сервиса! 
00:35 OkSender – программа для продвижения в социальной сети Одноклассники. 
23:14 Продам грабер образовательного сайта 
22:38 На оценку для продажи 
22:22 Услуги рерайтера по низкой цене или журналиста на сайт 
21:46 Мультиязычный download сайт 
21:35 Размещение статей, ссылок и постовых на качественных ресурсах 
21:25 Статейное продвижение ваших сайтов 
00:40 Копируют сайт. Нужна помощь (с оплатой) 
00:31 CPA сеть. Отзывы 
22:30 Посещаемости с 80 на 8000 за сутки! 
17:46 Роман Челлер: миллион в неделю, или как перестать бояться экспериментировать?! 
17:43 CPA Life 2017 – 12 Апреля в Санкт-Петербурге 
15:47 (Опрос) "Яндекс. Деньги": Во время каникул россияне покупали бижутерию и аккумуляторы 
15:41 Порнопираты нашли способ загружать на YouTube видео для взрослых