[PHP]使用PHP解码javascript escape() 编码过的字串为UTF-8
[PHP]使用PHP解码javascript escape() 编码过的字串为UTF-8
方法getGb2312不能用,因为Gb2312Utf8太大这里没发
如要完整的可到我的空间下载utf8gb2312互转集成GB2312.txt 这个资源
http://download.csdn.net/user/li36669957
- <?php
- /*
- *使用 PHP 解码 javascript escape() 编码过的字串为UTF-8
- *例:1
- *
- *$tem=new UnEscape();
- *echo $tem->getUtf8("%u624B%u673A%u95E8%u6237");
- *echo $tem->getGb2312("%u624B%u673A%u95E8%u6237");
- */
- function UnEscapeToUtf8($ar){
- foreach($ar as $val){
- $val = intval(substr($val,2),16);
- if($val < 0x7F){ // 0000-007F
- $c .= chr($val);
- }elseif($val < 0x800) { // 0080-0800
- $c .= chr(0xC0 | ($val / 64));
- $c .= chr(0x80 | ($val % 64));
- }else{ // 0800-FFFF
- $c .= chr(0xE0 | (($val / 64) / 64));
- $c .= chr(0x80 | (($val / 64) % 64));
- $c .= chr(0x80 | ($val % 64));
- }
- }
- return $c;
- }
- class UnEscape{
- function getUtf8($value=""){
- $text = preg_replace_callback("/%u[0-9A-Za-z]{4}/",UnEscapeToUtf8,$value);
- return urldecode($text);
- }
- function getGb2312($value=""){
- $text = preg_replace_callback("/%u[0-9A-Za-z]{4}/",UnEscapeToUtf8,$value);
- $obj=new Gb2312Utf8();
- return $obj->utf8ToGb2312(urldecode($text));
- }
- }
- ?>
热门文章推荐
- [Red5]Red5之Flash流媒体服务器的安装与使用教程完整版(组图)
- [rtsp]设置海康配置DDNS远程访问的用户手册(组图说明)
- [live555]live555直播rtsp流
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [FFmpeg]FFmpeg实现监控摄像头的RTSP协议转RTMP协议直播
- [海康]海康网络摄像机激活功能图文教程
- [RED5]搭建RED5直播用流媒体服务(搭直播环境)
请稍候...