2015-08-15 4 views
-1

Как я могу найти все вхождения тега html? Например, если моя строка была ...Найти все вхождения HTML-тега в PHP

<h1>Images</h1> 
<img src="img/bird.jpg"> 
<p>Hello world</p> 
<img src="img/beach.jpg" alt="test" class="picture"> 

И Если бы я хотел, чтобы сделать список всех тегов IMG, он пришел бы такой:

<img src="img/bird.jpg"> 
<img src="img/beach.jpg" alt="test" class="picture"> 

Как бы вы, ребята, это сделать ?

+0

вы можете использовать DOM для этого –

+1

https: //secure.php. net/manual/en/domdocument.getelementsbytagname.php – FuzzyTree

+0

Довольно похоже на этот вопрос вчера, http://stackoverflow.com/questions/32020171/regular-expression-to-find-all-src-attribute-of-html-img -element-only-folder/32020330 # 32020330 можно объединить с этим, http://stackoverflow.com/questions/2818759/how-do-i-display -a-DOMElement. – chris85

ответ

0

Вы можете использовать простую библиотеку HTML DOM здесь http://simplehtmldom.sourceforge.net/

Вот как найти найти все img теги:

<?php 

include('simple_html_dom.php'); 

$html = str_get_html('<h1>Images</h1> 
<img src="img/bird.jpg"> 

<p>Hello world</p> 
<img src="img/beach.jpg" alt="test" class="picture">'); 

foreach($html->find('img') as $img) { 
    print $img->outertext . PHP_EOL; 
} 
+0

Это, вероятно, самый простой вариант. Однако есть ли способ сделать это без библиотеки? – user3777369

+0

yep, см. Комментарий от @FuzzyTree –

+0

После использования этого я собираюсь пойти с этим. Хотя, если вы не хотите идти навстречу установке, комментарий @ FuzzyTree будет лучшим вариантом. – user3777369

Смежные вопросы