基本上,我需要在两个span标签之间获取文本,并且我尝试了许多不同的方法,没有解决方案。 我也在使用Simple HTML DOM Parser(http://simplehtmldom.sourceforge.net/),所以我能做的就是有点限制。 以下是基本设置:
<span class=1>text here</span> TEXT I NEED TO GET <span class=2>more text</span>
任何帮助?
答案 0 :(得分:4)
span元素之间的文本应该是DOMTextNode并且是span元素的兄弟。如果SimpleHTMLDom跟随DOM specs,您应该能够得到它:
$text = $html->find('span[class=1]', 0)->next_sibling();
如果这不起作用,请考虑使用基于libxml的更合适的解析器,例如:见
答案 1 :(得分:0)
尝试PHP Dom:
$dom = new DomDocument;
$dom->loadHtml('
<span class=1>text here</span> TEXT I NEED TO GET <span class=2>more text</span>
');
$xpath = new DomXpath($dom);
foreach ($xpath->query('//body/text()') as $textNode) {
echo $textNode->nodeValue; // will be: ' TEXT I NEED TO GET '
}
答案 2 :(得分:0)
这将为您提供文本块。
试试这个:
echo $html->find('text',1);
输出:
TEXT I NEED TO GET