PHP实现escape方法
原创
52cxy
12-20 10:23
阅读数:983
PHP实现escape方法:
function escape($str) { preg_match_all ( "/[\xc2-\xdf][\x80-\xbf]+|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}|[\x01-\x7f]+/e", $str, $r ); //匹配utf-8字符, $str = $r [0]; $l = count ( $str ); for($i = 0; $i < $l; $i ++) { $value = ord ( $str [$i] [0] ); if ($value < 223) { $str [$i] = rawurlencode ( utf8_decode ( $str [$i] ) ); //先将utf8编码转换为ISO-8859-1编码的单字节字符,urlencode单字节字符. //utf8_decode()的作用相当于iconv("UTF-8","CP1252",$v)。 } else { $json = json_encode($str[$i]); $str[$i] = "%u" . strtoupper(substr($json,3,strlen($json)-4)); } } return join ( "", $str ); }
共0条评论