这篇文章主要介绍了PHP基于imap获取邮件的方法,实例形式详细讲述了imap获取邮件的具体步骤,并详细讲述了Windows下和Linux下安装imap的方法,需要的朋友可以参考下
本文实例讲述了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
重新打开指定的目录:
复制代码 代码如下:
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 install
希望本文所述对大家的PHP程序设计有所帮助。
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
这篇文章主要介绍了PHP基于imap获取邮件的方法,实例形式详细讲述了imap获取邮件的具体步骤,并详细讲述了Windows下和Linux下安装imap的方法,需要的朋友可以参考下本文实例讲述了PHP基于imap获取邮件的方法。分享给大家供大家参考。具体实现方法如下:imap是一款邮件交互访问的协议了,下面是实例主要利用php imap模块来快速获取邮件,列出所有目录,代码如下:复制代码 代码如下...
在 Python 中,查找和
获取
电子
邮件
是一个多步骤的过程,需要第三方模块
imap
client 和 pyzmail。作为概述,这里有一个完整的例子,包括登录到
IMAP
服务器,搜索电子
邮件
,
获取
它们,然后从中提取电子
邮件
的文本。
>>> import
imap
client
>>>
imap
Obj =
imap
client.
IMAP
Client('
imap
.gmail.com', ssl=True)
>>>
imap
Obj.login...
在需求中需要能够监控邮箱的
邮件
,要满足这个功能得能够读取
邮件
的内容才行
这里使用一个我自己开发的一个基于
imap
拓展的composer来进行完成,目前无法读取附件,一般监控也是监控文字,算是满足基本需求
composer require superkingm/mail
使用,我这里以在laravel框架中使用为例子
<?
php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use MailBox\Ma.
已实现对于Gmail,qq,qq企业邮箱,阿里企业邮箱,outlook,hotmail的指定文件夹来拉取
邮件
内容,内容截图,附件等功能 !
什么是
IMAP
,POP3,
IMAP
协议
php
获取
收件箱,发件箱,垃圾箱,各种自定义分类
php
解析
邮件
内容,
邮件
内容,
邮件
内截图,
邮件
附件
什么是
IMAP
,POP3,
IMAP
协议?
IMAP
和POP3的区别?
MAP像POP3那样提供了方便的
邮件
下载服务,让用户能进行离线阅读。
IMAP
和POP3是
邮件
访问最为普遍的Internet标准协议。不同的是:
imap
_server =
imap
lib.
IMAP
4_SSL("
imap
.example.com")
imap
_server.login("user@example.com", "password")
# 选择
邮件
箱
imap
_server.select("INBOX")
# 搜索
邮件
_, email_ids =
imap
_server.search(None, "ALL")
#
获取
邮件
_, msg =
imap
_server.fetch(email_ids[0], "(RFC822)")
# 关闭连接
imap
_server.close()
imap
_server.logout()
# 解析
邮件
正文
email_body = msg[0][1]
邮件
正文存储在 `email_body` 变量中,可以使用 `email` 库来解析
邮件
。
示例代码如下:
import email
msg = email.message_from_bytes(email_body)
#
获取
邮件
正文
if msg.is_multipart():
for part in msg.walk():
# 查找纯文本部分
if part.get_content_type() == "text/plain":
email_body = part.get_payload(decode=True)
break
else:
email_body = msg.get_payload(decode=True)