phpQuery让php处理html代码像jQuery一样方便

前端之家收集整理的这篇文章主要介绍了phpQuery让php处理html代码像jQuery一样方便前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

简介

@H_301_3@

如何在PHP中方便地解析HTML代码,估计是每个PHPer都会遇到的问题。用PHPQuery就可以让PHP处理HTML代码像jQuery一样方便。@H_301_3@

项目地址:

github地址:@H_301_3@

DEMO@H_301_3@

下载库文件

我下的是onefile版:phpQuery-0.9.5.386-onefile.zip

官方demo:@H_301_3@

然后在项目中引用。@H_301_3@

html文件test.html

:@H_301_3@

代码如下:
@H_301_3@

PHP处理

:@H_301_3@

代码如下:
$filePath = 'test.html';
$fileContent = file_get_contents($filePath);
$doc = phpQuery::newDocumentHTML($fileContent);
phpQuery::selectDocument($doc);
$data = array(
'name' => array(),
'href' => array(),
'img' => array()
);
foreach (pq('a') as $t) {
$href = $t -> getAttribute('href');
$data['href'][] = $href;
}
foreach (pq('img') as $img) {
$data['img'][] = $domain . $img -> getAttribute('src');
}
foreach (pq('.GameName') as $name) {
$data['name'][] = $name -> nodeValue;
}
var_dump($data);
?>

@H_301_3@

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

输出:@H_301_3@

代码如下:
array (size=2) 0 => string 'Spiderman City Drive' (length=20) 1 => string 'Spiderman - City Raid' (length=21) 'href' => array (size=2) 0 => string 'http://www.gahe.com/Spiderman-City-Drive' (length=40) 1 => string 'http://www.gahe.com/Spiderman-City-Raid' (length=39) 'img' => array (size=2) 0 => string 'http://www.gahe.com/thumb/12/Spiderman-City-Drive.jpg' (length=53) 1 => string 'http://www.gahe.com/thumb/12/Spiderman-City-Raid.jpg' (length=52)
@H_301_3@

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

猜你在找的PHP相关文章