Escapeunescape in php
*/Function phpescape ($ str) {$ sublen = strlen ($ str); $ restring = ""; for ($ I = 0; $ I <$ sublen; $ I ++) {if (ord ($ str [$ I])> = 127) {$ tmps tutorial tring = bin2hex (iconv ("UTF-8", "UCS-2 ", substr ($ str, $ I, 2); if (! Eregi ("win", php_ OS) {$ tmpstring = substr ($ tmpstring, 2, 2 ). substr ($ tmpstring, 0, 2);} $ restring. = "% u ". $ tmpstring; $ I ++;} else {$ restring. = "% ". dechex (ord ($ str [$ I]) ;}return $ restring;} function unescape ($ str) {$ str = rawurldecode ($ str ); preg_match_all ("/% u. {4} | & # x. {4}; | & # d +; |. +/u ", $ str, $ r); $ ar = $ r [0]; foreach ($ ar as $ k => $ v) {if (substr ($ v,) = "% u") $ ar [$ k] = iconv ("UCS-2", "UTF-8", pack ("h4", Substr ($ v,-4); elseif (substr ($ v, 0, 3) = "& # x ") $ ar [$ k] = iconv ("UCS-2", "UTF-8", pack ("h4", substr ($ v, 3,-1 ))); elseif (substr ($ v,) = "& #") {$ ar [$ k] = iconv ("UCS-2", "UTF-8", pack ("n ", substr ($ v, 2,-1) ;}} return join ("", $ ar) ;} function escape ($ str) {preg_match_all ("/[x80-xff]. | [x01-x7f] +/", $ str, $ r); $ ar = $ r [0]; foreach ($ ar as $ k => $ v) {if (ord ($ v [0]) <128) $ ar [$ k] = rawurlencode ($ v); else $ R [$ k] = "% u ". bin2hex (iconv ("gb2312", "UCS-2", $ v);} return join ("", $ ar);} function unescape ($ str) {$ str = rawurldecode ($ str); preg_match_all ("/(?: % U. {4}) |. +/", $ str, $ r); $ ar = $ r [0]; foreach ($ ar as $ k => $ v) {if (substr ($ v,) = "% u" & strlen ($ v) = 6) $ ar [$ k] = iconv ("UCS-2", "gb2312 ", pack ("h4", substr ($ v,-4);} // open source code phpfensi.com return join ("", $ ar );}