| 
...
 | 
...
 | 
@@ -116,20 +116,28 @@ class Body { | 
| 
 | 
 | 
                 }
 | 
| 
 | 
 | 
             }
 | 
| 
 | 
 | 
             $first = array_values($first);
 | 
| 
 | 
 | 
             // body的数量字符串
 | 
| 
 | 
 | 
             preg_match("/^\{(\d+)\}/",trim($first[0]),$bodyNum);
 | 
| 
 | 
 | 
             $first[0] = preg_replace("/^\{\d+\}/",'',$first[0]);
 | 
| 
 | 
 | 
             // 第一行的结果就是 踢出 UID 1568602721 RFC822.TEXT {589}
 | 
| 
 | 
 | 
             $body[0] = implode("\r\n",$first);
 | 
| 
 | 
 | 
             /***************** end 第一行处理 **************/
 | 
| 
 | 
 | 
 //            -----------------------------------------------------------
 | 
| 
 | 
 | 
             /***************** start 最后一行处理 **************/
 | 
| 
 | 
 | 
             // 最后一行可能是 UID 1568602721 微软的就是
 | 
| 
 | 
 | 
             $end  = trim(end($body));
 | 
| 
 | 
 | 
             $end = preg_replace("/(UID \d+)|(FLAGS \([\\a-z* ]*\))/",'',$end);
 | 
| 
 | 
 | 
             if(!trim($end)){ array_pop($body); }
 | 
| 
 | 
 | 
             /***************** end 最后一行处理 **************/
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
             // 再次组装成字符串
 | 
| 
 | 
 | 
             $data->body = trim(implode("\r\n",$body));
 | 
| 
 | 
 | 
             if($bodyNum[1]??0){
 | 
| 
 | 
 | 
                 // 再次组装成字符串
 | 
| 
 | 
 | 
                 $data->body = trim(implode("\r\n",$body));
 | 
| 
 | 
 | 
                 $data->body = mb_substr($data->body,0,$bodyNum[1]);
 | 
| 
 | 
 | 
             }else{
 | 
| 
 | 
 | 
                 //            -----------------------------------------------------------
 | 
| 
 | 
 | 
                 /***************** start 最后一行处理 **************/
 | 
| 
 | 
 | 
                 // 最后一行可能是 UID 1568602721 微软的就是
 | 
| 
 | 
 | 
                 $end  = trim(end($body));
 | 
| 
 | 
 | 
                 $end = preg_replace("/(UID \d+)|(FLAGS \([\\a-z* ]*\))/",'',$end);
 | 
| 
 | 
 | 
                 if(!trim($end)){ array_pop($body); }
 | 
| 
 | 
 | 
                 /***************** end 最后一行处理 **************/
 | 
| 
 | 
 | 
                 // 再次组装成字符串
 | 
| 
 | 
 | 
                 $data->body = trim(implode("\r\n",$body));
 | 
| 
 | 
 | 
             }
 | 
| 
 | 
 | 
 
 | 
| 
 | 
 | 
             // 是否包含header
 | 
| 
 | 
 | 
             if($rfc822){
 | 
| 
 | 
 | 
                 // 删除header头信息这个是多余的
 | 
...
 | 
...
 | 
 |