利用php过滤恶意字符原理很简单我们只要定义好字符然后再利用foreach遍历恶意字符库,利用strpost检测用户提交的数据中有没有恶意字符库中字符即可实例了.
例1,判断字符是否存在,代码如下:
- function is_bad_chars($str){
- $bad_chars = array("\",' ',"'",'"','/','*',',','<','>',"r","t","n",'$','(',')','%','+','?',';','^','#',':',' ','`','=','|','-');
- foreach($bad_chars as $value){
- if (strpos($str,$value) !== false){
- return true;
- }
- }
- }
根据上面实例我们可以做一个过滤关键字的实例,代码如下:
- function outip($ip){
- @$txt = file_get_contents("ip/ip.txt" );
- $txtarr = explode("rn" , trim($txt));
- if(count($txtarr)<0){
- return false;
- }
- if(in_array($ip,$txtarr)){
- return true;
- }else{
- return false;
- }
- }
ip.txt文件中就是放一些你要过滤的词字了,这里面是每个字或词为一行. |