php清除HTML格式的代码
敬业的IT人
互联网
佚名
2008-1-10 17:33:05
在字符截取时常会因为HTML格式发生意外,ASP是,PHP也是,如果是可预见的简单HTML格式用replace就行了,对于文章正文这一类里面可能包含所有的HTML格式,想高效点还是用下面的的,已测试
$search = array ("’<script[^>]*?>.*?</script>’si", // 去掉 javascript
"’<[/!]*?[^<>]*?>’si", // 去掉 HTML 标记
"’([rn])[s]+’", // 去掉空白字符
"’&(quot|#34);’i", // 替换 HTML 实体
"’&(amp|#38);’i",
"’&(lt|#60);’i",
"’&(gt|#62);’i",
"’&(nbsp|#160);’i",
"’&(iexcl|#161);’i",
"’&(cent|#162);’i",
"’&(pound|#163);’i",
"’&(copy|#169);’i",
"’&#(d+);’e"); // 作为 PHP 代码运行
$replace = array ("",
"",
"\1",
"\"",
"&",
"<",
">",
" ",
chr(161),
chr(162),
chr(163),
chr(169),
"chr(\1)");
//$document为需要处理字符串,如果来源为文件可以$document = file_get_contents($filename);
//$text = preg_replace($search, $replace, $document);
$search = array ("’<script[^>]*?>.*?</script>’si", // 去掉 javascript
"’<[/!]*?[^<>]*?>’si", // 去掉 HTML 标记
"’([rn])[s]+’", // 去掉空白字符
"’&(quot|#34);’i", // 替换 HTML 实体
"’&(amp|#38);’i",
"’&(lt|#60);’i",
"’&(gt|#62);’i",
"’&(nbsp|#160);’i",
"’&(iexcl|#161);’i",
"’&(cent|#162);’i",
"’&(pound|#163);’i",
"’&(copy|#169);’i",
"’&#(d+);’e"); // 作为 PHP 代码运行
$replace = array ("",
"",
"\1",
"\"",
"&",
"<",
">",
" ",
chr(161),
chr(162),
chr(163),
chr(169),
"chr(\1)");
//$document为需要处理字符串,如果来源为文件可以$document = file_get_contents($filename);
//$text = preg_replace($search, $replace, $document);
- 最新文章
- PHP中for循环语句的几种非常规用法[01-10]
- 十天学会php之第十天[01-10]
- 十天学会php之第九天[01-10]
- 十天学会php之第八天[01-10]
- 十天学会php之第七天[01-10]
- 十天学会php之第六天[01-10]
- 相关文章
- HTML文档中用javascript调用Mi..[01-10]
- IE支持的HTML元素的DISABLE属性在NETSCAPE..[01-10]
- Dhtml:浏览大图时鼠标感应控制层滚动条的移动[01-10]
- Dhtml:用ondrag事件简单的实现鼠标拖动物件[01-10]
- 在ASP中使用FSO组件生成HTML页面[01-10]
- 返回远程动态页面执行后的静态HTML代码[01-10]
