Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Вырезка текста их тэга
Форумы портала PHP.SU » » Вопросы новичков » Вырезка текста их тэга

Страниц (1): [1]
 

1. PATCH - 23 Декабря, 2011 - 05:01:47 - перейти к сообщению
как на php можно написать что бы выдерало текст скажем из <div> ТУТ текст</div> тоесть что бы выдерало все из начало тега до конца тега со всеми его свойствами.
пытался так

CODE (htmlphp):
скопировать код в буфер обмена
  1. $textfile = file("http://seti.telecom.by/");
  2.  
  3.                 foreach ($textfile as $keys=>$textmode)
  4.                 {
  5.                         $chars = preg_split('/<div/',$textmode);
  6.                         if($chars)
  7.                         {
  8.                                 foreach ($chars as $keyss => $textt)
  9.                                 {
  10.                                    echo $textt." ";
  11.                                 }
  12.                         }
  13.                 }

но это не правильно получается) т.к он выдерает от начала тега до другога начала)
2. ams - 23 Декабря, 2011 - 06:16:03 - перейти к сообщению
strip_tags
3. PATCH - 23 Декабря, 2011 - 11:38:02 - перейти к сообщению
так) допустим он удаляет все тэги кроме указаного , но мне надо что бы не тэги вырезала а скопировала содержимого от тега <div> до </div> желательно что бы каждая строка div была элементом массива , а все остальное содержимое вне тегов было удалено) вот такое пытаюсь реализовать)
4. EuGen - 23 Декабря, 2011 - 11:44:30 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $sText='It is a <div >text with</div> some divs <dived>in</dived> it and we are <div style="width: 100px">going to fix it</div>';
  2. preg_match_all('/\<div(\s+.*?|)\>(.*?)\<\/div\>/ui', $sText, $rgMatches);
  3. //var_dump($rgMatches[2]);

Если строка не в utf, уберите модификатор u
5. snikers987 - 23 Декабря, 2011 - 11:51:30 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. $sContent = file_get_contents('http://site.ru/page.html');
  3. preg_match_all("#<div[^>]*>(.*)</div>#Uui", $sContent, $RgMatches);
  4. var_dump($RgMatches);
  5.  
6. PATCH - 23 Декабря, 2011 - 11:52:00 - перейти к сообщению
Опс) эт я намутил) чутка)) но все равно полу пустой массив)
а тэг a тут причем))

CODE (html):
скопировать код в буфер обмена
  1. array(2) {
  2.   [0]=>
  3.   array(0) {
  4.   }
  5.   [1]=>
  6.   array(0) {
  7.   }
  8. }
  9. array(2) {
  10.   [0]=>
  11.   array(0) {
  12.   }
  13.   [1]=>
  14.   array(0) {
  15.   }
  16. }
  17. array(2) {
  18.   [0]=>
  19.   array(1) {
  20.     [0]=>
  21.     string(211) "<div class="jcomments-links"> <a href="/index.php?option=com_content&view=article&id=340:mw3coopnews&catid=37:games#addcomments" class="comment-link">Добавить комментарий</a></div>"
  22.   }
  23.   [1]=>
  24.   array(1) {
  25.     [0]=>
  26.     string(176) " <a href="/index.php?option=com_content&view=article&id=340:mw3coopnews&catid=37:games#addcomments" class="comment-link">Добавить комментарий</a>"
  27.   }
  28. }

 

Powered by ExBB FM 1.0 RC1