加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

用phpQuery像jquery一样解析html代码

发布时间:2020-05-26 13:06:15 所属栏目:PHP 来源:互联网
导读:简介如何在php中方便地解析html代码,估计是每个phper都会遇到的问题。用phpQuery就可以让php处理html代码像jQuery一样方便。项目地址:https://code.google.com/p/phpquery/github地址:https://github.com/TobiaszCudnik/phpqueryDEMO下载库文件:https://c

简介

如何在php中方便地解析html代码,估计是每个phper都会遇到的问题。用phpQuery就可以让php处理html代码像jQuery一样方便。

项目地址:

github地址:

DEMO

下载库文件:

我下的是onefile版:

官方demo:

然后在项目中引用。

html文件test.html:

Spiderman City Drive

</span><span style="color: #800080;"&gt;$filePath</span> = 'test.html'<span style="color: #000000;"&gt;; </span><span style="color: #800080;"&gt;$fileContent</span> = <span style="color: #008080;"&gt;file_get_contents</span>(<span style="color: #800080;"&gt;$filePath</span><span style="color: #000000;"&gt;); </span><span style="color: #800080;"&gt;$doc</span> = phpQuery::newDocumentHTML(<span style="color: #800080;"&gt;$fileContent</span><span style="color: #000000;"&gt;); phpQuery</span>::selectDocument(<span style="color: #800080;"&gt;$doc</span><span style="color: #000000;"&gt;); </span><span style="color: #800080;"&gt;$data</span> = <span style="color: #0000ff;"&gt;array</span><span style="color: #000000;"&gt;( </span>'name' => <span style="color: #0000ff;"&gt;array</span>(),'href' => <span style="color: #0000ff;"&gt;array</span>(),'img' => <span style="color: #0000ff;"&gt;array</span><span style="color: #000000;"&gt;() ); </span><span style="color: #0000ff;"&gt;foreach</span> (pq('a') <span style="color: #0000ff;"&gt;as</span> <span style="color: #800080;"&gt;$t</span><span style="color: #000000;"&gt;) { </span><span style="color: #800080;"&gt;$href</span> = <span style="color: #800080;"&gt;$t</span> -> getAttribute('href'<span style="color: #000000;"&gt;); </span><span style="color: #800080;"&gt;$data</span>['href'][] = <span style="color: #800080;"&gt;$href</span><span style="color: #000000;"&gt;; } </span><span style="color: #0000ff;"&gt;foreach</span> (pq('img') <span style="color: #0000ff;"&gt;as</span> <span style="color: #800080;"&gt;$img</span><span style="color: #000000;"&gt;) { </span><span style="color: #800080;"&gt;$data</span>['img'][] = <span style="color: #800080;"&gt;$domain</span> . <span style="color: #800080;"&gt;$img</span> -> getAttribute('src'<span style="color: #000000;"&gt;); } </span><span style="color: #0000ff;"&gt;foreach</span> (pq('.GameName') <span style="color: #0000ff;"&gt;as</span> <span style="color: #800080;"&gt;$name</span><span style="color: #000000;"&gt;) { </span><span style="color: #800080;"&gt;$data</span>['name'][] = <span style="color: #800080;"&gt;$name</span> -><span style="color: #000000;"&gt; nodeValue; } </span><span style="color: #008080;"&gt;var_dump</span>(<span style="color: #800080;"&gt;$data</span><span style="color: #000000;"&gt;);

?>

上面的代码中包含了取属性和innerText内容(通过nodeValue取)。

输出:

(size=3'name' => (size=20 => 'Spiderman City Drive' (length=201 => 'Spiderman - City Raid' (length=21'href' => (size=20 => 'http://www.gahe.com/Spiderman-City-Drive' (length=401 => 'http://www.gahe.com/Spiderman-City-Raid' (length=39'img' => (size=20 => 'http://www.gahe.com/thumb/12/Spiderman-City-Drive.jpg' (length=531 => 'http://www.gahe.com/thumb/12/Spiderman-City-Raid.jpg' (length=52)

强大的是pq选择器,语法类似jQuery,很方便。

(编辑:安卓应用网)

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

    推荐文章
      热点阅读