LXXX. Mailparse Functions

Introduction

Mailparse is an extension for parsing and working with email messages. It can deal with RFC 822 and RFC 2045 (MIME) compliant messages.

Mailparse is stream based, which means that it does not keep in-memory copies of the files it processes - so it is very resource efficient when dealing with large messages.

Note: Mailparse requires the mbstring extension.

This extension has been moved to the PECL repository and is no longer bundled with PHP as of PHP 4.2.0.

Installation

This PECL extension is not bundled with PHP. Information for installing this PECL extension may be found in the manual chapter titled Installation of PECL extensions. Additional information such as new releases, downloads, source files, maintainer information, and a CHANGELOG, can be located here: http://pecl.php.net/package/mailparse.

In order to use these functions you must compile PHP with mailparse support by using the --enable-mailparse configure option.

Windows users will enable php_mailparse.dll inside of php.ini in order to use these functions. The DLL for this PECL extension may be downloaded from either the PHP Downloads page or from http://pecl4win.php.net/

Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

Table 1. Mailparse configuration options

NameDefaultChangeableChangelog
mailparse.def_charset"us-ascii"PHP_INI_ALL 
For further details and definitions of the PHP_INI_* constants, see the Appendix I.

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.

MAILPARSE_EXTRACT_OUTPUT (integer)

MAILPARSE_EXTRACT_STREAM (integer)

MAILPARSE_EXTRACT_RETURN (integer)

Table of Contents
mailparse_determine_best_xfer_encoding -- Gets the best way of encoding
mailparse_msg_create -- Create a mime mail resource
mailparse_msg_extract_part_file -- Extracts/decodes a message section
mailparse_msg_extract_part --  Extracts/decodes a message section
mailparse_msg_extract_whole_part_file -- Extracts a message section including headers without decoding the transfer encoding
mailparse_msg_free -- Frees a MIME resource
mailparse_msg_get_part_data -- Returns an associative array of info about the message
mailparse_msg_get_part -- Returns a handle on a given section in a mimemessage
mailparse_msg_get_structure -- Returns an array of mime section names in the supplied message
mailparse_msg_parse_file -- Parses a file
mailparse_msg_parse -- Incrementally parse data into buffer
mailparse_rfc822_parse_addresses -- Parse RFC 822 compliant addresses
mailparse_stream_encode --  Streams data from source file pointer, apply encoding and write to destfp
mailparse_uudecode_all --  Scans the data from fp and extract each embedded uuencoded file