PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
本文实例总结了PHP常用工具函数。分享给大家供大家参考,具体如下:
移除XSS攻击脚本
functionRemoveXSS($val){ //removeallnon-printablecharacters.CR(0a)andLF(0b)andTAB(9)areallowed //thispreventssomecharacterre-spacingsuchas//notethatyouhavetohandlesplitswith\n,\r,and\tlatersincethey*are*allowedinsomeinputs $val=preg_replace('/([\x00-\x08,\x0b-\x0c,\x0e-\x19])/','',$val); //straightreplacements,theusershouldneverneedthesesincethey'renormalcharacters //thispreventslike $search='abcdefghijklmnopqrstuvwxyz'; $search.='ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $search.='1234567890!@#$%^&*()'; $search.='~`";:?+/={}[]-_|\'\\'; for($i=0;$i 0){ $pattern.='('; $pattern.='([xX]0{0,8}([9ab]);)'; $pattern.='|'; $pattern.='|({0,8}([9|10|13]);)'; $pattern.=')*'; } $pattern.=$ra[$i][$j]; } $pattern.='/i'; $replacement=substr($ra[$i],0,2).' '.substr($ra[$i],2);//addin<>tonerfthetag $val=preg_replace($pattern,$replacement,$val);//filteroutthehextags if($val_before==$val){ //noreplacementsweremade,soexittheloop $found=false; } } } return$val; }
GBK转UTF8
functionGBKtoUTF8($str) { if(is_array($str)) { foreach($stras&$value) { $value=GBKtoUTF8($value); } return$str; }elseif(is_string($str)){ $str=iconv("GB18030","UTF-8//IGNORE",$str); return$str; }else{ return$str; } }
UTF8转GBK
functionUTF8toGBK(&$str) { if(is_array($str)) { foreach($stras&$value) { $value=UTF8toGBK($value); } return$str; }elseif(is_string($str)){ $str=iconv("UTF-8","GB18030//IGNORE",$str); return$str; }else{ return$str; } }
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP编码与转码操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》及《PHP错误与异常处理方法总结》
希望本文所述对大家PHP程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。