加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-02-10 13:21:42 所属栏目:PHP教程 来源:互联网
导读:1. 开始使用 首先下载解压缩,然后将simple_html_dom.php文件包含进要编写的脚本文件中,加载要处理的html,支持三种模式的html加载,分别是『从url中加载,从字符串中加载,从文件中加载』.代码如下: require_once(simple_html_dom.php); //从url加载 $html = f
  1. 开始使用
 
  首先下载解压缩,然后将simple_html_dom.php文件包含进要编写的脚本文件中,加载要处理的html,支持三种模式的html加载,分别是『从url中加载,从字符串中加载,从文件中加载』.代码如下:
 
  require_once('simple_html_dom.php');
  //从url加载
  $html = file_get_html('http://www.Cuoxin.com');
  //从字符串加载
  $html = str_get_html('<html><body>Hello World!</body></html>');
  //从文件中加载
  $html = file_get_html('example.htm');  
  从字符串加载网上文件需要先从网络下下载,使用cURL比较好一些,需要在php配置文件中打开php扩展php_curl。
  
  $url = 'http://www.Cuoxin.com';
  $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-
 

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读