Rumah > Artikel > pembangunan bahagian belakang > Imap是什么意思,php imap 函数详解_PHP教程
imap 的全名是 internet message access protocol,即网际网络信息存取协议,为美国史丹福大学 (stanford university) 在 1986 年开始研发的多重邮箱电子邮件系统。php 所提供的功能是 imap 4 的系统,这是根据 rfc 1730 所实作的。更多有关 imap 的信息可以参考 imap 的官方网站 http://www.imap.org 。
欲使用 imap 的电子邮件功能,要先到 ftp://ftp.cac.washington.edu/imap 下载 imap 的客户端程序。在编译完成之后将 c-client/c-client.a 复制到 /usr/local/lib 之中,并将 c-client/rfc822.h、mail.h 及 linkage.h 三个文件复制到 /usr/local/include 之下。之后编译 php 程序时要加入 –with-imap 的选项。
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 : 目前的状态信息。
imap_append
附加字符串到指定的邮箱中。
语法: int imap_append(int imap_stream, string mbox, string message, string [flags]);
返回值: 整数
函数种类: 网络系统
内 容说明: 本函数可在指定的电子邮箱中增加附加的字符串。参数 imap_stream 为 imap 的代号。参数 mbox 为电子邮箱的位址。参数 message 为欲附加的信息。参数 flag 为可省略的标志,表示电子邮箱的标志值。治募 注意的是要与 cyrus imap 服务器沟通时,应使用 \r\n 作为行结束字符 (end-of-line, eol)。若有错误则返回 false 值。
imap_base64
解 base64 编码。
语法: string imap_base64(string text);
返回值: 字符串
函数种类: 网络系统
内容说明: 本函数可将用 base64 编码字符串解码。返回值是解码后的字符串。
参考 imap_binary() base64_encode() base64_decode()
imap_body
读信的内文。
语法: string imap_body(int imap_stream, int msg_number, int [flags]);
返回值: 字符串
函数种类: 网络系统
内容说明
本函数可读取信件的内文 (body) 部份。参数 imap_stream 为 imap 的代号。参数 msg_number 为信件的序号。参数 flags 可省略,有下列的值
ft_uid : 信件序号为 uid。
ft_peek : 若无配置 \seen 标志则不要设本标志。
ft_internal : 返回字符串使用系统格式,不要刻意转成 crlf 行结束标准。
使用范例
本例利用 imap 协议读取 myid@localhost 的第一封信件。
imap_check
返回邮箱信息。
语法: object imap_check(int imap_stream);
返回值: 类
函数种类: 网络系统
内容说明: 本函数可取得目前电子邮箱的信息。返回值为类类型,包含下面的属性
date最新邮件的日期driver使用的界面mailbox电子邮箱网址nmsgs总邮件数目recent新进邮件数目
类属性 代表意义说明
参考 imap_mailboxmsginfo()
imap_close
关闭 imap 链接。
语法: int imap_close(int imap_stream, int [flags]);
返回值: 整数
函数种类: 网络系统
内容说明: 本函数用来关闭 imap 的资料流,亦即结束链接。可省略的参数 flags 的值若为 cl_expunge 则在关闭链接前会将电子邮件信箱清空。
imap_createmailbox
建立新的信箱。
语法: int imap_createmailbox(int imap_stream, string mbox);
返回值: 整数
函数种类: 网络系统
内容说明
本函数用来建立新的信箱。成功则返回 true 值。
imap_delete
标记欲删除邮件。
语法: int imap_delete(int imap_stream, int msg_number);
返回值: 整数
函数种类: 网络系统
内容说明
本函数仅用来标记欲删除之邮件。实际删除的指令 imap_expunge()
imap_deletemailbox
删除既有信箱。
语法: int imap_deletemailbox(int imap_stream, string mbox);
返回值: 整数
函数种类: 网络系统
内容说明: 本函数用来删除既有的信箱。成功则返回 true 值。
imap_expunge
删除已标记的邮件。
语法: int imap_expunge(int imap_stream);