php基于imap获取邮件的方法
imap是一款邮件交互访问的协议了,本例中利用php imap模块来快速获取邮件,并列出所有目录。
代码:
复制代码 代码示例:
$host = '{imap.mail.yahoo.com:993/ssl}';
$user = 'user@yahoo.com';
$pass = 'password';
$inbox = imap_open($host, $user, $pass);
$mailboxes = imap_list($inbox, $host, '*');
$mailboxes = str_replace($host, '', $mailboxes);
print_r($mailboxes);
//结果:
Array
(
[0] => Bulk Mail
[1] => Draft
[2] => Inbox
[3] => Sent
[4] => Trash
)
2、重新打开指定的目录:
复制代码 代码示例:
imap_reopen($inbox, $host.'Bulk Mail');
$emails = imap_search($inbox,'ALL');
print_r($emails);
补充:
1、windows安装imap
注意,在windows中要开启php.ini中的一个imap模板,在php中找到php_imap.dll扩展并开启,同时查看extensions如果没有php_imap.dll,则需要复制一个过去。
2、linux中安装imap
编译 imap 模块参数:
./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-kerberos=/usr --with-imap-ssl=/usr
make
make install