PHP input sanitizer?

后端 未结 4 960
余生分开走
余生分开走 2021-01-06 07:47

What are some good PHP html (input) sanitizers?

Preferably, if something is built in - I\'d like to us that.

UPDATE:

Per the request

4条回答
  •  陌清茗
    陌清茗 (楼主)
    2021-01-06 08:14

    use

     $input_var=sanitize_input($_POST);
    

    and functions are below, almost sanitize everthing u need

    function sanitize($var, $santype = 1){
         if ($santype == 1) {return strip_tags($var);}
         if ($santype == 2) {return htmlentities(strip_tags($var),ENT_QUOTES,'UTF-8');}
         if ($santype == 3) 
         {
          if (!get_magic_quotes_gpc()) {
           return addslashes(htmlentities(strip_tags($var),ENT_QUOTES,'UTF-8'));
          } 
          else {
             return htmlentities(strip_tags($var),ENT_QUOTES,'UTF-8');
          }
         }
        }
    

        function sanitize_input($input,$escape_mysql=false,$sanitize_html=true,
                 $sanitize_special_chars=true,$allowable_tags='

    ') { unset($input['submit']); //we use 'submit' variable for all of our form $input_array = $input; //array is not referenced when passed into foreach //this is why we create another exact array foreach ($input as $key=>$value) { if(!empty($value)) { $input_array[$key]=strtolower($input_array[$key]); //stripslashes added by magic quotes if(get_magic_quotes_gpc()){$input_array[$key]=sanitize($input_array[$key]);} if($sanitize_html){$input_array[$key] = strip_tags($input_array[$key],$allowable_tags);} if($sanitize_special_chars){$input_array[$key] = htmlspecialchars($input_array[$key]);} if($escape_mysql){$input_array[$key] = mysql_real_escape_string($input_array[$key]);} } } return $input_array; }

    Remember : it will not sanitize multidimensional array, u need to modify it recursively.

提交回复
热议问题