[php]php编码解码技术
[php]php编码解码技术
[php]php编码解码技术
- <?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));
- }
- }
- ?>
热门文章推荐
- [php]优酷真实视频地址解析算法
- [Dz]discuz手机版支持视频播放的方法
- [PHP]php加密js解密的方法实例
- [php]用PHP打印出前一天的时间格式
- [PHP]mpeg,mp3,avi的ffmpeg的php转换类
- [php]php中3DES加密一个非常有用的3des加密
- [PHP]php.ini修改上传文件的大小限制处理方法
- [php]用过的最好用的php分页类源代码
请稍候...