按类名获取特殊HTML标记的内容

时间:2013-08-19 14:16:28

标签: php html xml

如果我的HTML页面包含<div class="post-inner">,如何在没有任何JavaScript的情况下获取具有类名div的{​​{1}}的内容?我只想尽可能快地使用PHP post-inner标签的内容。我尝试过这段代码,但之后我不知道该怎么做:

div

2 个答案:

答案 0 :(得分:1)

您可以使用XPath来实现这一目标。将您的代码更改为:

$html = file_get_contents('http://www.q8ping.com/49352.html');
$doc = new DOMDocument();
libxml_use_internal_errors(true);
$doc->loadHTML($html);
$finder = new DomXPath($doc);
$node = $finder->query("//*[contains(@class, 'post-inner')]");
print_r($doc->saveHTML($node->item(0)));

您可能希望首先检查是否找到了元素。

答案 1 :(得分:1)

试试这个

$page = file_get_contents('http://www.q8ping.com/49352.html');
preg_match_all('/<div class=\"post-inner(.*?)\">(.*?)<\/div>/s',$page,$vv,PREG_SET_ORDER);
print_r($vv[0][0]);
exit;