>  기사  >  백엔드 개발  >  escape unescape的php下的实现方法_PHP教程

escape unescape的php下的实现方法_PHP教程

WBOY
WBOY원래의
2016-07-21 15:54:551125검색

function escape($str) { 
 preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r); 
 $ar = $r[0]; 
 foreach($ar as $k=>$v) { 
   if(ord($v[0])      $ar[$k] = rawurlencode($v); 
   else 
     $ar[$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,0,2) == "%u" && strlen($v) == 6) 
     $ar[$k] = iconv("UCS-2","GB2312",pack("H4",substr($v,-4))); 
 } 
 return join("",$ar); 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/318353.htmlTechArticlefunctionescape($str){ preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r); $ar=$r[0]; foreach($aras$k=$v){ if(ord($v[0])128) $ar[$k]=rawurlencode($v); else $ar[$k]="%u".bin2hex(ic...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.