php 正则获取html任意标签

<?php
$temp = '
<div class="num">1</div>
<div class="num">2</div>
<div class="num">3</div>
<div class="num">4</div>
<div class="num1">3</div>
<div class="num2">4</div>
<div class="num">5</div>';
 
$result = get_tag_data($temp,"div","class","num");
 
print_r($result);



function get_tag_data($html,$tag,$class,$value){ 
    //$value 为空,则获取class=$class的所有内容
    $regex = $value ? "/<$tag.*?$class=\"$value\".*?>(.*?)<\/$tag>/is" :  "/<$tag.*?$class=\".*?$value.*?\".*?>(.*?)<\/$tag>/is";
    preg_match_all($regex,$html,$matches,PREG_PATTERN_ORDER); 
    return $matches[1];//返回值为数组 ,查找到的标签内的内容
}

 

posted @ 2019-05-11 11:57  PHPer100  阅读(5264)  评论(1编辑  收藏  举报