Подправить функцию
Страницы: 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)
Новые темыОбъявленияСвободное общение
10:16 Ап 22.06.2017 
05:39 Как минимум один из ваших сайтов нарушает правила программы AdSense: как понять? 
21:16 Букварикс: бесплатная программа для быстрого поиска ключевых слов 
18:42 Нету посетителей на сайте 
15:14 Adsense личный опыт 
12:26 Помогите настроить правильно robots txt 
12:13 Партнерка ОК.ru 
04:24 Бесплатный SEO-Аудит. Получи 3 полных отчета по сайту! 
23:53 Куплю Bitcoin с моей доплатой! 
22:56 Отдам даром промокоды AdWords (под РФ) 
18:26 Продается финансовый каталог 
18:10 Продвижение сайтов «прогоны xrumer, статейный» большой выбор тарифов 
15:59 Продвижение Instagram (раскрутка вашего аккаунта) 
14:52 Пустые аккуанты Яндекс Директ. 
10:23 Купить Litecoin 
08:54 Посоветуйте видео редактор 
08:06 Всё о крипто-валюте 
06:22 Перенос с blogger на собственный домен 
01:51 По любимому ФЗ о перс данных 
23:56 Структура сайта 
17:23 Яндекс добивает SEO в комерческой выдаче