php含有css代码的变量。怎么过滤掉css代码呢??? 求高手解答。 。。

html-css09

php含有css代码的变量。怎么过滤掉css代码呢??? 求高手解答。 。。,第1张

一般css代码都保存在标签<style></style>之间,那么正则表达式如下:

$pa = '%<style(.*?)</style>%si'

下面的正则表达式,是匹配html中所有标签的,你可以进行替换,最终得到html的文本内容:

'%<(style|script)[^<>]*>.*?</\1>|</?[a-z][a-z0-9]*[^<>]*>|<!--.*?-->%si'

调用下面函数,想去掉什么标签,就去掉什么

<?php

/**

* 去掉指定的html标签

* @param array $string

* @param bool $str

* @return string

*/

function _strip_tags($tagsArr,$str) {

foreach ($tagsArr as $tag) {

$p[]="/(<(?:\/".$tag."|".$tag.")[^>]*>)/i"

}

$return_str = preg_replace($p,"",$str)

return $return_str

}

$str = "<b>您好</b><input type='text' name='' /><a href='http://www.baidu.com'>百度一下,你就知道</a>"

echo _strip_tags(array("b", "input", "a"),$str)#去掉 B 标签和 INPUT 标签

?>