站长论坛
标题:
PHP中正则替换html标签并可自定义正则规则
[打印本页]
作者:
tznktg
时间:
2010-5-16 17:47
标题:
PHP中正则替换html标签并可自定义正则规则
PHP有个去除HTML标签的函数strip_tags,不过对于某些特殊符号不好使,下面这个函数的功能非常强大,同时用户还可以根据自己的需要进行正则替换.如果不会可以留言跟贴
<?php
function pregstring($str){
$strtemp = trim($str);
$search = array(
"|'|Uis",
"|<script[^>].*?</script>|Uis", // 去掉 javascript
"|\[字定义\].*\[/字定义\]|Uis", // 去掉缩略图
"|<[\/\!].*?[^<>]*?>|Uis", // 去掉 HTML 标记
"'>(quot|#34);'i", // 替换 HTML 实体
"'>(amp|#38);'i",
"|,|Uis",
"|[\s]{2,}|is",
"[>nbsp;]isu",
"|[$]|Uis",
);
$replace = array(
"`",
"",
"",
"",
"",
"",
"",
" ",
" ",
" ",
);
$text = preg_replace($search, $replace, $strtemp);
return $text;
}
echo pregstring(字符串); //使用方法
?>
作者:
tznktg
时间:
2010-5-16 17:53
本帖最后由 tznktg 于 2010-5-16 17:56 编辑
PHP strip_tags() 函数
定义和用法
strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签。
语法
strip_tags(string,allow)参数 描述
string 必需。规定要检查的字符串。
allow 可选。规定允许的标签。这些标签不会被删除。
提示和注释
注释:该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。
例子
例子 1
<?php
echo strip_tags("Hello <b>world!</b>");
?>输出:
Hello world!例子 2
<?php
echo strip_tags("Hello <b><i>world!</i></b>","<b>");
?>输出:
Hello world!
欢迎光临 站长论坛 (http://www.tzlink.com/bbs/)
Powered by Discuz! X3.2