使用PHP从HTML页面返回结果
如果我有以下HTML代码:使用PHP从HTML页面返回结果,php,html,Php,Html,如果我有以下HTML代码: <ul> <li> <a href="/link1/">link 1</a> </li> <li> <a href="/link2/">link 2</a> </li> ... </ul> 等等。您可以使用with(plus或)从HTML中提取任何内容: $dom = new DOMDocument; $dom-&g
<ul>
<li>
<a href="/link1/">link 1</a>
</li>
<li>
<a href="/link2/">link 2</a>
</li>
...
</ul>
等等。您可以使用with(plus或)从HTML中提取任何内容:
$dom = new DOMDocument;
$dom->loadHTML('<ul>
<li><a href="/link1/">link 1</a></li>
<li><a href="/link2/">link 2</a></li>
</ul>');
$xpath = new DOMXpath($dom);
$links = array();
foreach($xpath->query("//ul//a[@href]") as $a) {
$links[] = $a->getAttribute("href");
}
var_dump($links);
// array(2) {
// [0]=>
// string(7) "/link1/"
// [1]=>
// string(7) "/link2/"
// }
$dom=新的DOMDocument;
$dom->loadHTML('
”);
$xpath=newdomxpath($dom);
$links=array();
foreach($xpath->query(“//ul//a[@href]”)作为$a){
$links[]=$a->getAttribute(“href”);
}
var_dump($links);
//阵列(2){
// [0]=>
//字符串(7)“/link1/”
// [1]=>
//字符串(7)“/link2/”
// }
将
loadHTML($string)
更改为loadHTMLFile($path\u或\u url)
以从文件加载内容。lalalalaa。。。。。你做了什么tried@Robin这段代码不是我的,它来自一位朋友,我告诉他,你不能使用PHP访问由浏览器呈现的已服务页面上的内容,应该使用Javascript或jQuery,但我想与专业人士确认一下我是对还是错。你的朋友在这里。加:啊,“由浏览器呈现”在这里是非常重要的一点……这段HTML代码来自哪里?@ruda.almeida:是的,我不是这个意思。我的意思是PHP可以访问这个文件吗?您在上面的评论中说,这是在一个已提供的页面上。我的意思是,这是在一个HTML或PHP文件中,还是由JS生成的?如果你想让PHP解析它,你必须把它放到那里。让JavaScript为您获取链接可能会更容易。
$dom = new DOMDocument;
$dom->loadHTML('<ul>
<li><a href="/link1/">link 1</a></li>
<li><a href="/link2/">link 2</a></li>
</ul>');
$xpath = new DOMXpath($dom);
$links = array();
foreach($xpath->query("//ul//a[@href]") as $a) {
$links[] = $a->getAttribute("href");
}
var_dump($links);
// array(2) {
// [0]=>
// string(7) "/link1/"
// [1]=>
// string(7) "/link2/"
// }