试试这段代码吧,解码mime 的

mime

 function decode_mime_string ($string) {
   $pos = strpos($string, '=?');
   if (!is_int($pos)) {
     return $string;
   }
   
   $preceding = substr($string, 0, $pos); // save any preceding text
   
   $search = substr($string, $pos+2, 75); /* the mime header spec says this is the longest a single encoded word can be */
   $d1 = strpos($search, '?');
   if (!is_int($d1)) {
     return $string;
   }
   
   $charset = substr($string, $pos+2, $d1);
   $search = substr($search, $d1+1);
   
   $d2 = strpos($search, '?');
   if (!is_int($d2)) {
     return $string;
   }
   
   $encoding = substr($search, 0, $d2);
   $search = substr($search, $d2+1);
   
   $end = strpos($search, '?=');
   if (!is_int($end)) {
     return $string;
   }
   
   $encoded_text = substr($search, 0, $end);
   $rest = substr($string, (strlen($preceding . $charset . $encoding . $encoded_text)+6));
   
   switch ($encoding) {
   case 'Q':
   case 'q':
     $encoded_text = str_replace('_', '%20', $encoded_text);
     $encoded_text = str_replace('=', '%', $encoded_text);
     $decoded = urldecode($encoded_text);
     
     if (strtolower($charset) == 'windows-1251') {
       $decoded = convert_cyr_string($decoded, 'w', 'k');
     }
     break;
     
   case 'B':
   case 'b':
     $decoded = urldecode(base64_decode($encoded_text));
     
     if (strtolower($charset) == 'windows-1251') {
       $decoded = convert_cyr_string($decoded, 'w', 'k');
     }
     break;
     
   default:
     $decoded = '=?' . $charset . '?' . $encoding . '?' . $encoded_text . '?=';
     break;
   }
   
   return $preceding . $decoded . decode_mime_string($rest);
} // decode_mime_string()

时间: 2024-10-24 14:37:34

试试这段代码吧,解码mime 的的相关文章

编译错误-出现了fatal exception :main 这是其中的一段代码,大家看看有什么问题

问题描述 出现了fatal exception :main 这是其中的一段代码,大家看看有什么问题 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); loginBtn = (Button)findViewById(R.id.login_btn_login); registerBtn = (Butt

xmlentities-在xml文档中插入图片总是失败,请大家帮我看看这段代码错在哪里了?

问题描述 在xml文档中插入图片总是失败,请大家帮我看看这段代码错在哪里了? <?xml version="1.0" encoding="GB2312"?> <!DOCTYPE photos[ <!ELEMENT photos (photo*)> <!ELEMENT photo EMPTY> <!ATTLIST photo Sources ENTITIES #REQUIRED> <!ENTITY ic1 S

c++-为什么这段代码中对象rectangle的各个成员函数输出的值是对的,而box的却都是错的

问题描述 为什么这段代码中对象rectangle的各个成员函数输出的值是对的,而box的却都是错的 #include using namespace std; class rectangle { protected: double length,width,l,w; public: void setlength(); void getlength(); void setwidth(); void getwidth(); double area(); double perimeter(); dou

我写的这段代码是不是有问题,都没效果。就是鼠标移入移出让它高亮。

问题描述 我写的这段代码是不是有问题,都没效果.就是鼠标移入移出让它高亮. 代码如图所示,我想实现鼠标移到li的时候把它的样式改为active,其实就是高亮.然后移除li的时候把li去除.悬赏的币不多,请见谅!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 解决方案 解决方案二: 上面Js中多了个分号,我把分号去掉,结果也一样,样式用的是boostrap 解决方案三: http://m.blog.csdn.net/article/details?id=50

c++数据结构堆栈加减乘除运算器 我从教科书上copy了一段代码但是输入后直接停止工作求解

问题描述 c++数据结构堆栈加减乘除运算器 我从教科书上copy了一段代码但是输入后直接停止工作求解 我输入的是自带测试用例运算式 (((60+40)/50*(16-4)) #include #include #include #include #include using namespace std; double read_and_evaluate(istream& ins); void evaluate_stack_tops(stack& numbers,stack& ope

scanf-新手练习,运行这段代码,打了几个字母回车就崩溃。

问题描述 新手练习,运行这段代码,打了几个字母回车就崩溃. #include int main(void){ char a; scanf(""%s""&a); printf(""%s""a); getchar();} 解决方案 不才给出个人答案首先得有返回,既然是int main 得有retur 0;但是重点是在char是单字符,,对于输入对个字母当然不行 解决方案二: 加个return试试

java 排列组合-求大神帮我看看这段代码,打印完“12345”结束for循环后为什么还能继续运行?新手没金币,抱歉!

问题描述 求大神帮我看看这段代码,打印完"12345"结束for循环后为什么还能继续运行?新手没金币,抱歉! public class Test { public static void main(String[] args) { prints(0 0 0 0 0);}public static void prints(int k1int k2int k3int k4int k5){ if(k5!=0){ System.out.println(k1*10000+k2*1000+k3*1

spring jdbc-用spring mvc模式写了一段代码,但一直都会提示404,不知道错误在哪,求指点。

问题描述 用spring mvc模式写了一段代码,但一直都会提示404,不知道错误在哪,求指点. 用springmvc 和spring jdbc谢了一段代码,但一直提示404错误,不知道该如何解决,已经困扰很多天了.(Dao中只写了增加,没有写service,只是想试一下能不能连接到数据库,customer只有id和name) web.xml文件内容如下: <?xml version="1.0" encoding="UTF-8"?> <web-ap

uitableview-UITableView使用xib自定义cell 下面这段代码滑动的时候会不流畅?

问题描述 UITableView使用xib自定义cell 下面这段代码滑动的时候会不流畅? 界面用xib设置好了 在使用的时候 - (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"CustomerCell"; CustomCell *cell = [tableV