我们有html页面,里面有很多代码。通过PHP获取html块
有时它有阻止#container
,有时不。
此页面的所有代码在$page
变量内。
我如何:
- 检查,是否有与
id="container"
屏蔽? - 如果html页面里面有
#container
,那么得到它的内容并写入变量$container
。
任务应该由php完成。
我们有html页面,里面有很多代码。通过PHP获取html块
有时它有阻止#container
,有时不。
此页面的所有代码在$page
变量内。
我如何:
id="container"
屏蔽?#container
,那么得到它的内容并写入变量$container
。任务应该由php完成。
解决您的问题的可能方法之一是使用第三方库。比方说,http://simplehtmldom.sourceforge.net/:
$html->load($page);
if ($html->find('#container')) $container = $html->find('#container');
正则表达式是在这里你的朋友。
祝您HTML解析之旅
正则表达式是解析HTML的可怕解决方案。 – 2011-03-03 19:37:10
有很多[HTML解析器(http://stackoverflow.com/questions/292926/robust-mature-html-parser-for-php)可用于PHP 。 – NullUserException 2011-03-03 19:32:50
@NullUserException并且它们很慢。鉴于一个id只能使用一次,使用正则表达式来检查'id =“container”',那么如果有必要的话,只需启动解析器就可以获得性能。 – Endophage 2011-03-03 19:40:51