IMAP, POP3 and NNTP functions

PHP Manual
Prev |  | Next

# XLII. IMAP, POP3 and NNTP functions

# Introduction

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.

# Requirements

This extension requires the c-client library to be installed. Grab the latest version from ftp://ftp.cac.washington.edu/imap/ and compile it.

You have to copy some files to make sure they are in your link path (e.g.: `/usr/local/lib/`) and include directory (e.g.: `/usr/local/include`). The files to copy can be found in the source tree under `imap-200x/c-lient` after a succesfull run of make. Copy `c-client.a` to `/usr/local/lib/libc-client.a` or some other directory on your link path.

> Note: Make sure `c-client.a` ends up in your link path under the name `libc-client.a`.

Copy the following files to `/usr/local/include` or some other directory in your include path.

`c-client.h`
`imap4r1.h`
`rfc822.h`
`mail.h`
`linkage.h`
`env.h`
`env_unix.h`
`fs.h`
`ftl.h`
`misc.h`
`nntp.h`
`nl.h`
`osdep.h`
`smtp.h`
`tcp.h`

> Note: The name of `env_unix.h` depends on your OS. Make sure to copy this files with following symlinks option. To build the c-client library with SSL or/and Kerberos support read the docs supplied with the package.

# Installation

To get these functions to work, you have to compile PHP with `--with-imap`.

> Note: Depending how the c-client was configured, you might also need to add `--with-imap-ssl=/path/to/openssl/` and/or `--with-kerberos` into the PHP configure line.

# Runtime Configuration

This extension has no configuration directives defined in `php.ini`.

# Resource Types

# Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

`NIL` (integer)

`OP_DEBUG` (integer)

`OP_READONLY` (integer)

`OP_ANONYMOUS` (integer)

`OP_SHORTCACHE` (integer)

`OP_SILENT` (integer)

`OP_PROTOTYPE` (integer)

`OP_HALFOPEN` (integer)

`OP_EXPUNGE` (integer)

`OP_SECURE` (integer)

`CL_EXPUNGE` (integer)

`FT_UID` (integer)

`FT_PEEK` (integer)

`FT_NOT` (integer)

`FT_INTERNAL` (integer)

`FT_PREFETCHTEXT` (integer)

`ST_UID` (integer)

`ST_SILENT` (integer)

`ST_SET` (integer)

`CP_UID` (integer)

`CP_MOVE` (integer)

`SE_UID` (integer)

`SE_FREE` (integer)

`SE_NOPREFETCH` (integer)

`SO_FREE` (integer)

`SO_NOSERVER` (integer)

`SA_MESSAGES` (integer)

`SA_RECENT` (integer)

`SA_UNSEEN` (integer)

`SA_UIDNEXT` (integer)

`SA_UIDVALIDITY` (integer)

`SA_ALL` (integer)

`LATT_NOINFERIORS` (integer)

`LATT_NOSELECT` (integer)

`LATT_MARKED` (integer)

`LATT_UNMARKED` (integer)

`SORTDATE` (integer)

`SORTARRIVAL` (integer)

`SORTFROM` (integer)

`SORTSUBJECT` (integer)

`SORTTO` (integer)

`SORTCC` (integer)

`SORTSIZE` (integer)

`TYPETEXT` (integer)

`TYPEMULTIPART` (integer)

`TYPEMESSAGE` (integer)

`TYPEAPPLICATION` (integer)

`TYPEAUDIO` (integer)

`TYPEIMAGE` (integer)

`TYPEVIDEO` (integer)

`TYPEOTHER` (integer)

`ENC7BIT` (integer)

`ENC8BIT` (integer)

`ENCBINARY` (integer)

`ENCBASE64` (integer)

`ENCQUOTEDPRINTABLE` (integer)

`ENCOTHER` (integer)

# See Also

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.

Warning
Crashes and startup problems of `PHP` may be encountered when loading this extension in conjunction with the recode extension. See the recode extension for more information.

Prev | Home | Next
read_exif_data | Up | imap_8bit