使用带有素数的PHP读取页面源代码“

时间:2012-11-18 04:30:41

标签: php

我正在尝试阅读页面的源代码。我只想阅读一些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];

提前谢谢。

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