php下过滤html代码的函数 提高程序安全性

2015-01-24信息快讯网

用PHP过滤html里可能被利用来引入外部危险内容的代码。有些时候,需要让用户提交html内容,以便丰富用户发布的信息,当然,有些可能造成显示页面布局混乱的代码也在过滤范围内。

以下为过滤HTML代码的函数:
 
function ihtmlspecialchars($string) { 
if(is_array($string)) { 
foreach($string as $key => $val) { 
$string[$key] = ihtmlspecialchars($val); 
} 
} else { 
$string = preg_replace('/&((#(\d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-z0-9]{2,5});)/', '&\\1', 
str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $string)); 
} 
return $string; 
} 


php下过滤HTML代码的函数
 
function htmlEncode($string) { 
$string=trim($string); 
$string=str_replace("&","&",$string); 
$string=str_replace("'","'",$string); 
$string=str_replace("&","&",$string); 
$string=str_replace(""",""",$string); 
$string=str_replace("\"",""",$string); 
$string=str_replace("<","<",$string); 
$string=str_replace("<","<",$string); 
$string=str_replace(">",">",$string); 
$string=str_replace(">",">",$string); 
$string=str_replace(" "," ",$string); 
$string=nl2br($string); 
return $string; 
} 
©2014-2024 dbsqp.com