好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php html解析器Simple HTML Dom使用说明 - php高级应用

php html解析器Simple HTML Dom使用说明

1. 开始使用

首先下载解压缩,然后将simple_html_dom.php文件包含进要编写的脚本文件中,加载要处理的html,支持三种模式的html加载,分别是『从url中加载,从字符串中加载,从文件中加载』.代码如下:

require_once ( 'simple_html_dom.php' );  //从url加载   $html  = file_get_html( 'http://HdhCmsTestphpfensi测试数据' );  //从字符串加载   $html  = str_get_html( '<html><body>Hello World!</body></html>' );  //从文件中加载   $html  = file_get_html( 'example.htm' );   从字符串加载网上文件需要先从网络下下载,使用cURL比较好一些,需要在php配置文件中打开php扩展php_curl。    $url  =  'http://HdhCmsTestphpfensi测试数据' ;  $ci  = curl_init();  curl_setopt( $ci ,CURLOPT_URL, $url );  curl_setopt( $ci , CURLOPT_SSL_VERIFYPEER, false);  curl_setopt( $ci , CURLOPT_SSL_VERIFYHOST, false);  curl_setopt( $ci , CURLOPT_RETURNTRANSFER, 1);  $result  = curl_exec( $ch ); 

2.查找html元素

使用find函数查找,返回包含对象的数组,常见的查找如下.

//查找超链接元素   $alink  =  $html ->find( 'a' );  //查找第n个连接元素   $alink  =  $html ->find( 'a' ,5);  //查找id为main的div   $mainDiv  =  $html ->find( 'div[id=main]' );  //查找所有定义了id的div   $idDiv  =  $html ->find( 'div[id]' );  //查找所有定义了id的元素   $idAll  =  $html ->find( '[id]' );  //查找样式类为info的元素   $classInfo  =  $html ->find( '.info' );  //支持嵌套子元素查找   $ret  =  $html ->find( 'ul li' );  //查找多个html元素   $ret  =  $html ->find( 'a,img,p' );  //....   

3.其他

可以使用内置的函数来进行元素的定位,返回父元素parent,返回子元素数组children,返回第一个子元素first_child,返回最后一个子元素last_child,返回前一个相邻元素prev_sibling,返回后一个相邻元素next_sibling等.提供简单的正则表达式来过滤属性选择器,类似于[attribute]的格式.

每个对象都有4个基本属性:

tag — 返回html标签名

innertext — 返回innerHTML

outertext — 返回outerHTML

plaintext — 返回HTML标签中的文本

返回元素属性值:

//返回$alink的href值   $link  =  $alink ->href;  

通过设置元素的属性值可以对元素进行添加、修改、删除操作,代码如下:

//删除url连接   $alink ->href = null;  //元素的修改   $ret ->outertext =  '<div class="nav">'  .  $ret ->outertext .  '</div>' ;  $ret ->outertext =  '' ;  $ret ->outertext =  $ret ->outertext .  '<div>other</div>' ;  $ret ->outertext =  '<div>Welcome</div>'  .  $ret ->outertext;   -EOF- 

查看更多关于php html解析器Simple HTML Dom使用说明 - php高级应用的详细内容...

  阅读:34次