XLII. IMAP, POP3 and NNTP functions
To get these functions to work, you have to compile PHP with --with-imap. That
requires the c-client library to be installed. Grab the latest version from ftp://ftp.cac.washington.edu/imap/ and
compile it. Then copy c-client/c-client.a to /usr/local/lib/libc-client.a or some
other directory on your link path and copy c-client/rfc822.h, mail.h and
linkage.h to /usr/local/include or some other directory in your include path.
Note that these functions are not limited to the IMAP protocol, despite their
name. The underlying c-client library also supports NNTP, POP3 and local
mailbox access methods.
This document can't go into detail on all the topics touched by the provided functions.
Further information is provided by the documentation of the c-client library source
(docs/internal.txt). and the following RFC documents:
-
RFC2821: Simple Mail
Transfer Protocol (SMTP).
-
RFC2822: Standard for
ARPA internet text messages.
-
RFC2060: Internet
Message Access Protocol (IMAP) Version 4rev1.
-
RFC1939: Post Office
Protocol Version 3 (POP3).
-
RFC977: Network News
Transfer Protocol (NNTP).
-
RFC2076: Common Internet
Message Headers.
-
RFC2045 , RFC2046 , RFC2047 , RFC2048 ∓ RFC2049: Multipurpose Internet Mail
Extensions (MIME).
A detailed overview is also available in the books Programming Internet
Email by David Wood and Managing IMAP by Dianna Mullet ∓ Kevin Mullet.
- Table of Contents
- imap_8bit -- Convert an 8bit string to a
quoted-printable string
- imap_alerts -- This function returns all
IMAP alert messages (if any) that have occurred during this page request or since the alert stack
was reset
- imap_append -- Append a string message to a
specified mailbox
- imap_base64 -- Decode BASE64 encoded
text
- imap_binary -- Convert an 8bit string to a
base64 string
- imap_body -- Read the message body
- imap_bodystruct -- Read the structure of
a specified body section of a specific message
- imap_check -- Check current mailbox
- imap_clearflag_full -- Clears flags
on messages
- imap_close -- Close an IMAP stream
- imap_createmailbox -- Create a new
mailbox
- imap_delete -- Mark a messge for deletion
from current mailbox
- imap_deletemailbox -- Delete a
mailbox
- imap_errors -- This function returns all of
the IMAP errors (if any) that have occurred during this page request or since the error stack was
reset.
- imap_expunge -- Delete all messages marked
for deletion
- imap_fetch_overview -- Read an
overview of the information in the headers of the given message
- imap_fetchbody -- Fetch a particular
section of the body of the message
- imap_fetchheader -- Returns header for a
message
- imap_fetchstructure -- Read the
structure of a particular message
- imap_get_quota -- Retrieve the quota
level settings, and usage statics per mailbox
- imap_getmailboxes -- Read the list of
mailboxes, returning detailed information on each one
- imap_getsubscribed -- List all the
subscribed mailboxes
- imap_header -- Read the header of the
message
- imap_headerinfo -- Read the header of the
message
- imap_headers -- Returns headers for all
messages in a mailbox
- imap_last_error -- This function returns
the last IMAP error (if any) that occurred during this page request
- imap_listmailbox -- Read the list of
mailboxes
- imap_listsubscribed -- List all the
subscribed mailboxes
- imap_mail -- Send an email message
- imap_mail_compose -- Create a MIME
message based on given envelope and body sections
- imap_mail_copy -- Copy specified messages
to a mailbox
- imap_mail_move -- Move specified messages
to a mailbox
- imap_mailboxmsginfo -- Get
information about the current mailbox
- imap_mime_header_decode -- Decode
MIME header elements
- imap_msgno -- This function returns the
message sequence number for the given UID
- imap_num_msg -- Gives the number of
messages in the current mailbox
- imap_num_recent -- Gives the number of
recent messages in current mailbox
- imap_open -- Open an IMAP stream to a
mailbox
- imap_ping -- Check if the IMAP stream is still
active
- imap_popen -- Open a persistant IMAP stream
to a mailbox
- imap_qprint -- Convert a quoted-printable
string to an 8 bit string
- imap_renamemailbox -- Rename an old
mailbox to new mailbox
- imap_reopen -- Reopen IMAP stream to new
mailbox
-
imap_rfc822_parse_adrlist -- Parses an address string
-
imap_rfc822_parse_headers -- Parse mail headers from a string
- imap_rfc822_write_address --
Returns a properly formatted email address given the mailbox, host, and personal info.
- imap_scanmailbox -- Read the list of
mailboxes, takes a string to search for in the text of the mailbox
- imap_search -- This function returns an
array of messages matching the given search criteria
- imap_setacl -- Sets the ACL for a giving
mailbox
- imap_set_quota -- Sets a quota for a given
mailbox
- imap_setflag_full -- Sets flags on
messages
- imap_sort -- Sort an array of message
headers
- imap_status -- This function returns status
information on a mailbox other than the current one
- imap_subscribe -- Subscribe to a
mailbox
- imap_uid -- This function returns the UID for
the given message sequence number
- imap_undelete -- Unmark the message which
is marked deleted
- imap_unsubscribe -- Unsubscribe from a
mailbox
- imap_utf7_decode -- Decodes a modified
UTF-7 encoded string.
- imap_utf7_encode -- Converts 8bit data
to modified UTF-7 text.
- imap_utf8 -- Converts text to UTF8
- imap_thread -- Return threaded by REFERENCES
tree
|