php过滤emod与特殊字符

admin4年前php2036
<?php 
function xml_entities($string) {
//过滤emod
$ts_zifu= json_encode($string);
$str = json_decode(preg_replace("#(\\\ud[0-9a-f]{3})#i", "", $ts_zifu));
//过滤特殊字符
$text=preg_replace("/[[:punct:]\s]/",' ',$str);
$text=urlencode($text);
$text=preg_replace("/(%7E|%60|%21|%40|%23|%24|%25|%5E|%26|%27|%2A|%28|%29|%2B|%7C|%5C|%3D|\-|_|%5B|%5D|%7D|%7B|%3B|%22|%3A|%3F|%3E|%3C|%2C|\.|%2F|%A3%BF|%A1%B7|%A1%B6|%A1%A2|%A1%A3|%A3%AC|%7D|%A1%B0|%A3%BA|%A3%BB|%A1%AE|%A1%AF|%A1%B1|%A3%FC|%A3%BD|%A1%AA|%A3%A9|%A3%A8|%A1%AD|%A3%A4|%A1%A4|%A3%A1|%E3%80%82|%EF%BC%81|%EF%BC%8C|%EF%BC%9B|%EF%BC%9F|%EF%BC%9A|%E3%80%81|%E2%80%A6%E2%80%A6|%E2%80%9D|%E2%80%9C|%E2%80%98|%E2%80%99|%EF%BD%9E|%EF%BC%8E|%EF%BC%88)+/",' ',$text);
$str=urldecode($text);
//过滤指定的空格与字符
  return   strtr(
        $str, 
        array(
            "<" => "",
            ">" => "",
            '"' => "",
            "'" => "",
            "&" => "",
            "|" => "",
            "-" => "",
            "–" => "",
            ":" => "",
            "Ⅱ" => "2",
            "”" => "",
            "】" => "",
            "【" => "",
            "%" => "",
            "(" => "",
            ")" => "",
            ";" => "",  
            "  " => "",      
        )
    );

}

$string="I love you>>><<,?❤?????‍??????✔?‍??‍???‍?;asdfasdfasdf;";
echo xml_entities($string) ;
 ?>


相关文章

php如何获取cookie的过期时间

将编码的json放入cookie中是我最喜欢的方法,以便从cookie中正确获取格式化的数据。 试一下:$expiry = time() + 12345;&nb...

php再调用json_decode从字符串对象生成json对象时出现Cannot use object of type stdClass as array解决方法

php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误:Cannot use object of type stdClass as array产生...

php post undefined index,PHP 中提示undefined index的解决方案

声明为空isset($_POST['user_email']),或者,empty($_POST['user_email'])在php.ini中设置error_repor...

把字符按照逗号分割成数组

 <?php $cars=$_POST['shuju'];$cars=explode(',', $cars);print_r($cars)&n...

php设置跨站访问

  php的open_basedir设置多个路径(目录),分隔符是“:”冒号open_basedir=/www/wwwroot/www.ceshi.com/:/tmp/:/www/...

php替换ASCIII码空格字符的方法

需要用到PHP自带函数chr()方法如下:$string=str_replace(chr(0x01),"",$string);...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。