/**
* 删除指定标签
*
* @param array $tags 删除的标签 数组形式
* @param string $str html字符串
* @param bool $content true保留标签的内容text
* $html[] = '/(<' . $tag . '.*?>(.|\n)*?<\/' . $tag . '>)/is'; (有点问题 o 标签有时会把内容搞没)
* @return mixed
*/
function replace_tag($tags, $str, $content = false)
{
$str = htmlspecialchars_decode($str);
$html = [];
if($content){
foreach ($tags as $tag) {
$html[] = '/(<' . $tag . '.*>[\s\S]*?<\/' . $tag . '>)/';
}
}else{
foreach ($tags as $tag) {
$html[] = "/(<(?:\/" . $tag . "|" . $tag . ")[^>]*>)/is";
}
}
$data = preg_replace($html, '', $str);
return $data;
}
12-20