php字符过滤方法

原创
2012/02/23 09:56
阅读数 360
/**
  * 字符过滤
  * $santype 1 : 剥去 HTML、XML 以及 PHP 的标签,
  *    2 : 剥去 HTML、XML 以及 PHP 的标签,字符转换为 HTML 实体 , 编码双引号和单引号
  *    3 : 剥去 HTML、XML 以及 PHP 的标签,在指定的预定义字符前添加反斜杠    单引号 (') 双引号 (") 反斜杠 (\) NULL
  *    4 : 用于清理从数据库或 HTML 表单中取回的数据 (剥去 HTML、XML 以及 PHP 的标签)
  *    6 : 在指定的预定义字符前添加反斜杠    单引号 (') 双引号 (") 反斜杠 (\) NULL
  *
  * */
  
 function sanitize($var, $santype = 1, $allowable_tags = ''){
  if ($santype == 1) {return strip_tags($var, $allowable_tags = '');}
  elseif ($santype == 2) {return htmlentities(strip_tags($var, $allowable_tags),ENT_QUOTES,'UTF-8');}
  elseif ($santype == 3) {
     return addslashes(strip_tags($var, $allowable_tags));
  }
  elseif ($santype == 4) {
     return stripslashes(preg_replace('/<([^>]+)>/es', "'<'.sanitize('\\1',5).'>'",strip_tags($var, $allowable_tags)));
  }
  elseif ($santype == 5) {
   return preg_replace('/\son\w+\s*=/is','',$var);
  }
  elseif ($santype == 6 ){
   return addslashes($var);
  }
 }
展开阅读全文
打赏
0
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
0
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部