初识simplehtmldom-simplehtmldom的基本使用方法

作者: Rememberautumn 分类: 未分类 发布时间: 2014-10-27 16:18 阅读: 5,306

simplehtmldom的各种版本可以在下载,simplehtmldom是用PHP5写的HTML DOM解析器,可以让你用很简单的方法操作HTML!支持无效的HTML.

首先下载simplehtmldom;下面是一个示例:

//使用url和file都可以创建DOM
$html = file_get_html(‘http://www.google.com/’);

//找到所有图片 
foreach($html->find(‘img’) as $element) 
       echo $element->src . ‘<br>’;

//找到所有链接 
foreach($html->find(‘a’) as $element) 
       echo $element->href . ‘<br>’;

如何创建HTML DOM对象?

//字符串创建DOM对象
$html = str_get_html(‘<html><body>Hello!</body></html>’);

//URL创建
$html = file_get_html(‘http://www.google.com/’);

//文件创建
$html = file_get_html(‘test.htm’);

如何查找HTML?

// 查找所有文字块 
$es = $html->find(text);

// Find all comment (<!–…–>) blocks 
$es = $html->find(comment);

如何查找HTML?

/ Find all anchors, returns a array of element objects
$ret = $html->find(a);

// Find (N)th anchor, returns element object or null if not found (zero based)
$ret = $html->find(a‘, 0);

// Find lastest anchor, returns element object or null if not found (zero based)
$ret = $html->find(a‘, -1); 

// Find all <div> with the id attribute
$ret = $html->find(div[id]);

// Find all <div> which attribute id=foo
$ret = $html->find(div[id=foo]); 

如何访问html元素的属性?

// Get a attribute ( If the attribute is non-value attribute (eg. checked, selected…), it will returns true or false)
$value = $e->href;

// Set a attribute(If the attribute is non-value attribute (eg. checked, selected…), set it’s value as true or false)
$e->href = ‘my link’;

// Remove a attribute, set it’s value as null! 
$e->href = null;

// Determine whether a attribute exist? 
if(isset($e->href)) 
        echo ‘href exist!’;

如何遍历DOM树?

/ 如果你不熟悉DOM树, 可以点击这里知道更多

// Example
echo $html->find(“#div1”, 0)->children(1)->children(1)->children(2)->id;
// or 
echo $html->getElementById(“div1”)->childNodes(1)->childNodes(1)->childNodes(2)->getAttribute(‘id’);

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注