
* 去掉所有的HTML标记和JavaScript标记
*/
function replaceHtmlAndJs($document)
{
$document = trim($document)
if (strlen($document) <= 0) {
return $document
}
$search = array ("'<script[^>]*?>.*?</script>'si", // 去掉 javascript
"'<[\/\!]*?[^<>]*?>'si", // 去掉 HTML 标记
// "'([\r\n])[\s]+'",// 去掉空白字符
"'&(quot|#34)'i",// 替换 HTML 实体
"'&(amp|#38)'i",
"'&(lt|#60)'i",
"'&(gt|#62)'i",
"'&(nbsp|#160)'i"
) // 作为 PHP 代码运行
$replace = array ("",
"",
// "\1",
"\"",
"&",
"<",
">",
" "
)
return @preg_replace ($search, $replace, $document)
}
什么叫实体化:就是将html标签(如“<”,“>”等)转化成用ASCII表示的形式。
举个例子:
<?php$str = "A 'quote' is <b>bold</b>"
// Outputs: A 'quote' is &ltb&gtbold&lt/b&gt
echo htmlentities($str)
// Outputs: A &#039quote&#039 is &ltb&gtbold&lt/b&gt
echo htmlentities($str, ENT_QUOTES)
有啥作用:一般是过滤用户输入
参考资料:http://w3school.com.cn/html/html_entities.asp
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)