亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP常用工具函數小結【移除XSS攻擊、UTF8與GBK編碼轉換等】

2024-05-05 00:08:40
字體:
來源:轉載
供稿:網友

本文實例總結了PHP常用工具函數。分享給大家供大家參考,具體如下:

移除XSS攻擊腳本

function RemoveXSS($val) {    // remove all non-printable characters. CR(0a) and LF(0b) and TAB(9) are allowed    // this prevents some character re-spacing such as <java/0script>    // note that you have to handle splits with /n, /r, and /t later since they *are* allowed in some inputs    $val = preg_replace('/([/x00-/x08,/x0b-/x0c,/x0e-/x19])/', '', $val);    // straight replacements, the user should never need these since they're normal characters    // this prevents like <IMG SRC=@avascript:alert('XSS')>    $search = 'abcdefghijklmnopqrstuvwxyz';    $search .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';    $search .= '1234567890!@#$%^&*()';    $search .= '~`";:?+/={}[]-_|/'//';    for ($i = 0; $i < strlen($search); $i++) {      // ;? matches the ;, which is optional      // 0{0,7} matches any padded zeros, which are optional and go up to 8 chars      // @ @ search for the hex values      $val = preg_replace('/(&#[xX]0{0,8}'.dechex(ord($search[$i])).';?)/i', $search[$i], $val); // with a ;      // @ @ 0{0,7} matches '0' zero to seven times      $val = preg_replace('/(?{0,8}'.ord($search[$i]).';?)/', $search[$i], $val); // with a ;    }    // now the only remaining whitespace attacks are /t, /n, and /r    $ra1 = array('javascript', 'vbscript', 'expression', 'applet', 'meta', 'xml', 'blink', 'link', 'style', 'script', 'embed', 'object', 'iframe', 'frame', 'frameset', 'ilayer', 'layer', 'bgsound', 'title', 'base');    $ra2 = array('onabort', 'onactivate', 'onafterprint', 'onafterupdate', 'onbeforeactivate', 'onbeforecopy', 'onbeforecut', 'onbeforedeactivate', 'onbeforeeditfocus', 'onbeforepaste', 'onbeforeprint', 'onbeforeunload', 'onbeforeupdate', 'onblur', 'onbounce', 'oncellchange', 'onchange', 'onclick', 'oncontextmenu', 'oncontrolselect', 'oncopy', 'oncut', 'ondataavailable', 'ondatasetchanged', 'ondatasetcomplete', 'ondblclick', 'ondeactivate', 'ondrag', 'ondragend', 'ondragenter', 'ondragleave', 'ondragover', 'ondragstart', 'ondrop', 'onerror', 'onerrorupdate', 'onfilterchange', 'onfinish', 'onfocus', 'onfocusin', 'onfocusout', 'onhelp', 'onkeydown', 'onkeypress', 'onkeyup', 'onlayoutcomplete', 'onload', 'onlosecapture', 'onmousedown', 'onmouseenter', 'onmouseleave', 'onmousemove', 'onmouseout', 'onmouseover', 'onmouseup', 'onmousewheel', 'onmove', 'onmoveend', 'onmovestart', 'onpaste', 'onpropertychange', 'onreadystatechange', 'onreset', 'onresize', 'onresizeend', 'onresizestart', 'onrowenter', 'onrowexit', 'onrowsdelete', 'onrowsinserted', 'onscroll', 'onselect', 'onselectionchange', 'onselectstart', 'onstart', 'onstop', 'onsubmit', 'onunload');    $ra = array_merge($ra1, $ra2);    $found = true; // keep replacing as long as the previous round replaced something    while ($found == true) {      $val_before = $val;      for ($i = 0; $i < sizeof($ra); $i++) {        $pattern = '/';        for ($j = 0; $j < strlen($ra[$i]); $j++) {          if ($j > 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).'<x>'.substr($ra[$i], 2); // add in <> to nerf the tag        $val = preg_replace($pattern, $replacement, $val); // filter out the hex tags        if ($val_before == $val) {          // no replacements were made, so exit the loop          $found = false;        }      }    }    return $val;}

GBK轉UTF8

function GBKtoUTF8($str){  if(is_array($str))  {    foreach ($str as &$value)    {      $value = GBKtoUTF8($value);    }    return $str;  }elseif(is_string($str)){    $str = iconv("GB18030", "UTF-8//IGNORE", $str);    return $str;  }else{    return $str;  }}

UTF8轉GBK

function UTF8toGBK(&$str){  if(is_array($str))  {    foreach ($str as &$value)    {      $value = UTF8toGBK($value);    }    return $str;  }elseif (is_string($str)){    $str = iconv("UTF-8", "GB18030//IGNORE", $str);    return $str;  }else{    return $str;  }}

 

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩高清在线观看| 成人美女免费网站视频| 国内免费精品永久在线视频| 日本一区二区三区四区视频| 庆余年2免费日韩剧观看大牛| 欧美xxxx综合视频| 北条麻妃一区二区在线观看| 中文字幕在线日韩| 日韩在线视频线视频免费网站| 日韩中文字幕免费视频| 国产精品视频久久久久| 57pao国产精品一区| 亚洲欧洲日本专区| 日韩亚洲第一页| 欧美一区深夜视频| 欧美在线亚洲在线| 日本中文字幕久久看| 亚洲欧美一区二区三区情侣bbw| 精品久久中文字幕| 精品国产一区二区三区四区在线观看| 欧美日韩中文字幕| 91精品国产色综合久久不卡98| 国产精品自拍偷拍| 疯狂蹂躏欧美一区二区精品| 国产精品一区二区女厕厕| 国产精品1234| 欧美一级片一区| 国产精品香蕉在线观看| 欧美日韩999| 成人免费看片视频| 精品少妇v888av| 少妇av一区二区三区| 日韩女优在线播放| 欧美性猛交xxxx免费看漫画| 欧美大片第1页| 国产精品高潮呻吟视频| 欧美孕妇与黑人孕交| 日韩av电影免费观看高清| 亚洲欧洲日产国码av系列天堂| 亚洲国产成人精品久久久国产成人一区| 色偷偷偷亚洲综合网另类| xvideos亚洲人网站| 精品国产91久久久| 正在播放欧美视频| 理论片在线不卡免费观看| 久久精品久久精品亚洲人| 91精品免费久久久久久久久| 欧美一区二区三区免费视| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲欧美999| 亚洲偷欧美偷国内偷| 韩国福利视频一区| 日韩电影大片中文字幕| 欧美性xxxxx极品| 北条麻妃一区二区三区中文字幕| 国产精品美女www爽爽爽视频| 成人精品一区二区三区| 久久影视三级福利片| 欧美精品aaa| 日韩专区在线观看| 亚洲欧美日韩国产成人| 欧美性在线视频| 国产精品日韩在线一区| 久久久国产视频| 精品日本美女福利在线观看| 91久久精品美女| 亚洲经典中文字幕| 久久99国产精品久久久久久久久| 亚洲91av视频| 热re99久久精品国产66热| 欧美高清视频一区二区| 色偷偷91综合久久噜噜| 亚洲第一网站男人都懂| 在线播放日韩欧美| 久久精视频免费在线久久完整在线看| 久久夜精品香蕉| 日韩av网站导航| 日韩在线观看免费高清| 国产中文日韩欧美| 欧美精品videosex性欧美| 日韩欧美第一页| 亚洲电影免费观看高清完整版在线| 欧美激情一区二区三区高清视频| 亚洲xxxx视频| 亚洲伊人久久大香线蕉av| 亚洲xxxx在线| 欧美性猛交99久久久久99按摩| 亚洲精品一区二区网址| 亚洲天堂视频在线观看| 97国产精品免费视频| 亚洲欧洲美洲在线综合| 日韩精品久久久久久久玫瑰园| 欧洲成人在线观看| 亚洲偷熟乱区亚洲香蕉av| 91精品视频一区| 国产成人精品av在线| 国产视频精品一区二区三区| 亚洲精品98久久久久久中文字幕| 日韩美女在线看| 国产精品夜色7777狼人| 精品精品国产国产自在线| 91天堂在线观看| 久操成人在线视频| 亚洲最大在线视频| 精品无人国产偷自产在线| 国产在线拍揄自揄视频不卡99| 亚洲精品一区中文字幕乱码| 成人亲热视频网站| 欧美激情一区二区久久久| 欧美影院成年免费版| 国产一区二区三区免费视频| 亚洲一区亚洲二区| 法国裸体一区二区| 亚洲免费精彩视频| 国产精品一区二区三区毛片淫片| 欧美成人午夜激情在线| 国产大片精品免费永久看nba| 久久精品成人动漫| 欧美黄网免费在线观看| 国产亚洲精品久久久久久777| 91精品久久久久久久久久入口| 青草成人免费视频| 亚洲最大成人免费视频| 国产成人精品最新| 亚洲国产精彩中文乱码av在线播放| 亚洲免费一在线| 久久久精品影院| 国产精品成人一区二区| 成人中心免费视频| 久久久免费精品视频| 在线视频日韩精品| 亚洲人成电影网站色www| 亚洲欧美激情视频| 亚洲精品suv精品一区二区| 在线观看成人黄色| 国产高清在线不卡| 欧美午夜宅男影院在线观看| 精品成人在线视频| 亚洲成人精品久久| 欧美有码在线观看视频| 久久久精品中文字幕| 成人精品一区二区三区电影黑人| 福利精品视频在线| 欧美壮男野外gaytube| 北条麻妃一区二区在线观看| 久久久久久久亚洲精品| 亚洲成人教育av| 91久久国产婷婷一区二区| 色噜噜久久综合伊人一本| 成人黄色av播放免费| 欧美成人精品激情在线观看| 精品女同一区二区三区在线播放| 久久久久这里只有精品| 精品久久久久久亚洲精品| 久久亚洲精品视频| 欧美日韩国产影院| 亚洲国产成人91精品| 亚洲精品一区二区三区不| 中文字幕亚洲自拍| 亚洲欧美精品suv| 亚洲一区二区三区777| 精品美女国产在线| 欧美在线影院在线视频| 国产欧美在线视频|