2014-08-31 122 views
0

如何從字符串中的HTML代碼中獲取所有標記?如何從HTML代碼中獲取所有標籤?

例子:

$HTML = <<<HTML 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Hello World!</title> 
    </head> 
    <body> 
     <p id="main">Hello World!</p> 
     <img src="wallpaper.png"> 
    </body> 
</html> 
HTML; 

getTags($HTML); 

打印出來(返回數組) - 標籤:

array(html, head, meta, title, body, p, img) 

打印出來 - 標籤與id屬性:

array(html, head, meta, title, body, [p, main], img) 

剛僅供參考,我是HTML新手。

+0

的定界符不具有相關性的問題。 '$ HTML'是一個像其他任何字符串一樣的字符串。 – Havenard 2014-08-31 00:59:17

+0

@Havenard所以我必須聲明'$ Html'只能作爲一個字符串? – Slowaways 2014-08-31 01:04:54

+0

你已經是。 – Havenard 2014-08-31 01:10:06

回答

1

該做的一切,但打印出來的ID,但它不應該太難搞清楚:

<?php 
$html = '<html> 
<head> 
    <meta charset="UTF-8"> 
    <title>Hello World!</title> 
</head> 
<body> 
    <p id="main">Hello World!</p> 
    <img src="wallpaper.png"> 
</body> 
</html>'; 

$dom = new DOMDocument(); 
$list=array(); 
$dom->loadHTML($html); 
$elements = $dom->getElementsByTagName('*'); 
foreach($elements as $child) 
{ 
    $list[]= $child->nodeName; 
} 
?> 

答:

Array ([0] => html [1] => head [2] => meta [3] => title [4] => body [5] => p [6] => img) 
+0

非常感謝! – Slowaways 2014-08-31 01:42:33

相關問題