1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
function
test( $strHead ){
if ( ereg ( "=\?.{0,}\?[Bb]\?" , $strHead )){
$arrHead =split( "=\?.{0,}\?[Bb]\?" , $strHead );
while (list( $key , $value )=each( $arrHead )){
if ( ereg ( "\?=" , $value )){
$arrTemp =split( "\?=" , $value );
$arrTemp [0]= base64_decode ( $arrTemp [0]);
$arrHead [ $key ]=join( "" , $arrTemp );
}
}
$strHead =join( "" , $arrHead );
} return
$strHead ;
} function
is_utf8( $string ) {
return
preg_match(‘%^(?:
[\x09\x0A\x0D\x20-\x7E] # ASCII
| [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte
| \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs
| [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte
| \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates
| \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3
| [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
)*$%xs‘, $string );
} for ( $i = $tot ; $i >0; $i --)
{ $head = $obj ->getHeaders( $i ); // Get Header Info Return Array Of Headers **Array Keys are (subject,to,toOth,toNameOth,from,fromName)
//echo "Subjects :: ".$head[‘subject‘]."<br>";
$s =test( $head [ ‘subject‘ ]);
if (is_utf8( $s )== ‘1‘ ){
echo
iconv( ‘UTF-8‘ , ‘gb2312‘ , $s ) ;
} else {
echo
$s ;
}
echo
"<br>" ;
echo
"base :: " .iconv( "GB2312" , "utf-8" , base64_decode ( ‘5rWL6K+V‘ )). "<br>" ;
echo
"TO :: " . $head [ ‘to‘ ]. "<br>" ;
echo
"To Other :: " . $head [ ‘toOth‘ ]. "<br>" ;
echo
"ToName Other :: " . $head [ ‘toNameOth‘ ]. "<br>" ;
echo
"From :: " . $head [ ‘from‘ ]. "<br>" ;
echo
"FromName :: " . $head [ ‘fromName‘ ]. "<br>" ;
echo
"<br><br>" ;
echo
"<br>*******************************************************************************************<BR>" ;
echo
$obj ->getBody( $i ); // Get Body Of Mail number Return String Get Mail id in interger
$str = $obj ->GetAttach( $i , "./" ); // Get attached File from Mail Return name of file in comma separated string args. (mailid, Path to store file)
$ar = explode ( "," , $str );
foreach ( $ar
as $key => $value )
echo
( $value == "" )? "" : "Atteched File :: " . $value . "<br>" ;
echo
"<br>------------------------------------------------------------------------------------------<BR>" ;
//$obj->deleteMails($i); // Delete Mail from Mail box
} |
imap_append : 附加字符串到指定的邮箱中。
imap_base64 :
解 base64 编码。
imap_body : 读信的内文。
imap_check : 返回邮箱信息。
imap_close : 关闭
imap 链接。
imap_createmailbox : 建立新的信箱。
imap_delete :
标记欲删除邮件。
imap_deletemailbox :
删除既有信箱。
imap_expunge : 删除已标记的邮件。
imap_fetchbody :
从信件内文取出指定部分。
imap_fetchstructure :
获取某信件的结构信息。
imap_header : 获取某信件的标头信息。
imap_headers :
获取全部信件的标头信息。
imap_listmailbox :
获取邮箱列示。
imap_listsubscribed : 获取订阅邮箱列示。
imap_mail_copy : 复制指定信件到它处邮箱。
imap_mail_move :
移动指定信件到它处邮箱。
imap_num_msg : 取得信件数。
imap_num_recent : 取得新进信件数。
imap_open :
打开 imap 链接。
imap_ping : 检查 imap 是否连接。
imap_renamemailbox : 更改邮箱名字。
imap_reopen :
重开 imap 链接。
imap_subscribe : 订阅邮箱。
imap_undelete
: 取消删除邮件标记。
imap_unsubscribe :
取消订阅邮箱。
imap_qprint : 将 qp 编码转成八位。
imap_8bit :
将八位转成 qp 编码。
imap_binary : 将八位转成 base64
编码。
imap_scanmailbox : 寻找信件有无特定字符串。
imap_mailboxmsginfo
: 取得目前邮箱的信息。
imap_rfc822_write_address :
电子邮件位址标准化。
imap_rfc822_parse_adrlist : 解析电子邮件位址。
imap_setflag_full : 配置信件标志。
imap_clearflag_full :
清除信件标志。
imap_sort : 将信件标头排序。
imap_fetchheader : 取得原始标头。
imap_uid :
取得信件 uid。
imap_getmailboxes : 取得全部信件详细信息。
imap_getsubscribed : 列出所有订阅邮箱。
imap_msgno :
列出 uid 的连续信件。
imap_search : 搜寻指定标准的信件。
imap_last_error : 最后的错误信息。
imap_errors :
所有的错误信息。
imap_alerts : 所有的警告信息。
imap_status :
目前的状态信息。