<?php function uni_decode($s) { preg_match_all('/\&\#([0-9]{2,5})\;/', $s, $html_uni); preg_match_all('/[\\\%]u([0-9a-f]{4})/ie', $s, $js_uni); $source = array_merge($html_uni[0], $js_uni[0]); $js = array(); for($i=0;$i
\u8fd9\u662f\u6d4b\u8bd5\u6587\u672c\uff01'; echo uni_decode($str); // 大家好,我是孤魂!这是测试文本!
在网上搜索一把,很多用php实现的escape函数,大同小异
function phpescape($str){ preg_match_all(/[\x80-\xff].|[\x01-\x7f]+/,$str,$newstr); $ar = $newstr[0]; foreach($ar as $k=>$v){ if(ord($ar[$k])>=127){ $tmpstring=bin2hex(iconv(gbk,ucs-2,$v)); if (!eregi(win,php_os)){ $tmpstring = substr($tmpstring,2,2).substr($tmpstring,0,2); } $restring.=%u.$tmpstring; } else { $restring.= rawurlencode($v); } } return $restring; }
以上所述就是本文的全部内容了,希望大家能够喜欢。