我正在寻找从外部 URL 收集信息,并将其剥离为值。
例如
<span id="ctl00_cphRoblox_rbxUserStatisticsPane_lFriendsStatistics">149</span>
我找不到使用 PHP Dom 获取“149”的方法
请帮忙,谢谢!
一种解决方法是使用preg_match()
,但我只会将它与 curl() 一起使用...
$row = '<span id="ctl00_cphRoblox_rbxUserStatisticsPane_lFriendsStatistics">149</span>';
preg_match_all('/<span.*?>.*?<\/[\s]*span>/s', $row, $matches2);
var_dump($matches2);
另一种选择是使用 simple_html_dom.php:
include('simple_html_dom.php');
$html = str_get_html($row);
var_dump($html->find('span', 0)->plaintext);
第三个是使用内置的 DOMDocument。
function DOMRemove(DOMNode $from) {
$sibling = $from->firstChild;
do {
$next = $sibling->nextSibling;
$from->parentNode->insertBefore($sibling, $from);
} while ($sibling = $next);
$from->parentNode->removeChild($from);
}
$dom = new DOMDocument;
$dom->load('test.html');
$nodes = $dom->getElementsByTagName('span');
foreach ($nodes as $node) {
DOMRemove($node);
}
echo $dom->saveHTML();
来源:https ://stackoverflow.com/a/4663865/1675369