Summary — An introduction to the PHP MAPI Extension


The PHP-MAPI extension provides access to MS MAPI function from php. Although not all MAPI functions and interfaces are supported, most functions have a php counterpart in this extension. Using PHP-MAPI, users can create webbased e-mail and calendaring systems and interfaces with existing php projects, using the mapi functions like a normal mapi program.

Other documentation

The complete PHP-MAPI extension was based on the MAPI specification by Microsoft, which can be downloaded from MSDN at no charge. The functions defined in chapter 2, the php-mapi reference, are usually directly related to their MAPI counterpart and most information provided by the Microsoft MAPI specification is also applicable to the functions defined in the reference.

Also, general MAPI practices, hierarchies and properties apply to the PHP-MAPI extension. You are assumed to have basic knowledge of MAPI and its object structure before reading this reference manual.

Unsupported features

Current unsupported features of MAPI are:

  • The IProfAdmin interface and related interfaces

  • Notifications, interfaces and related functions

  • Search folders: creation and use of

  • Unicode string properties (read/write, except for named properties which are always Unicode)

  • Folder and message operations: copyTo etc.

New features

Additional features since 4.1 are:

  • Selected Addressbook functions (IAddrBook and others)

  • SetReadFlags function on a MAPI folder was added

  • GetNamesFromIDs function for named properties was added

  • IExchangeModifyTable interface support

  • Zarafa specific admin functions to create users, groups and adminster them

  • Zarafa specific permission functions to get and set permissions on items

  • Ability to get the last occurred HRESULT from the called mapi functions

Latest version

The latest version of this document can be downloaded from