php中escape unescape的写法

高洛峰
Lepaskan: 2016-11-29 15:15:27
asal
1561 orang telah melayarinya

*/
function phpescape($str){  
$sublen=strlen($str);  
$restring="";  
for ($i=0;$i<$sublen;$i++){  
if(ord($str[$i])>=127){  
$tmps教程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,0,2) == "%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,0,2) == "&#") {  
$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  
$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)));  
} //开源代码phpfensi.com 
return join("",$ar);  
}
Salin selepas log masuk


Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!