我正在尝试阅读页面的源代码。我只想阅读一些id为“wrapper_left”的某个div元素内的文本。
我的问题是,如果在爆炸函数的第一个参数中使用了素数,它就不起作用。我试图转义字符串,虽然我认为这不会做任何事情。
$source_code = htmlspecialchars(file_get_contents('http://mydomain.com'));
$source_code = explode('<div id="wrapper_left">', $source_code);
echo $source_code[1];
提前谢谢。
答案 0 :(得分:5)
不要试图用explode()
,字符串操作或正则表达式来完成这项工作,你需要一个HTML解析器,比如DOMDocument
:
$doc = new DOMDocument;
$doc->loadHTMLFile( 'http://mydomain.com');
$xpath = new DOMXPath( $doc);
$div = $xpath->query( '//div[@id="wrapper_left"]')->item(0);
echo $div->textContent;
你可以看到它在this demo中工作,当提供这个HTML时:
<div id="wrapper_left">Some text</div>
它产生:
Some text