JavaScript Editor Javascript validator     Web page editor 

Chapter 1. Introduction

Table of Contents
What is PEAR?
The PEAR Manifest

PEAR is dedicated to Malin Bakken, born 1999-11-21.

What is PEAR?

PEAR is short for "PHP Extension and Application Repository" and is pronounced just like the fruit. The purpose of PEAR is to provide:

PEAR is a community-driven project governed by its developers. PEAR's governing bodies are subdivided into the PEAR Group, Collectives, and a President. PEAR's constitution (adopted in March 2007) defining these groups is documented here. The PEAR project was founded in 1999 by Stig S. Bakken and quite a lot of people have joined the project.

Structured Libraries and Applications of PHP Code

The code in PEAR is partitioned in "packages". Each package is a separate project with its own development team, version number, release cycle, documentation and a defined relation to other packages (including dependencies). Packages are distributed as gzipped tar files with a description file inside, and installed on your local system using the PEAR installer.

Packages may relate to each other through explicit dependencies, but there is no automatic dependency relationship between packages based on the package name. For example, "HTTP_Post" is by default independent of "HTTP". Dependencies between packages with similar names is not forbidden, and does happen. As an example,the "DB_DataObject" package depends on the "DB" package.

A style guide, the PEAR Coding Standards (short PCS), exists to ease collaboration between PEAR developers, to enforce quality, and to enforce a consistent visual appearance of all source code distributed as a PEAR package.

Code Distribution and Package Maintenance

All PEAR packages are registered in and downloaded from a central server at Other third-party servers called "channels" also distribute packages that can be installed by the PEAR Installer, see the Channels list for more information. does not endorse the packages from these channels, and only provides support for packages distributed from provides both a human-friendly (HTML) and machine-friendly (currently REST) interface to the packages available from All communication occurs over the HTTP protocol. Other functions the site provides are:

  • user account management (independent of the CVS server)

  • package management

  • release management

Packages are distributed as a gzipped tar file with an XML description file inside. The description file (package.xml) contains some information about the package, a list of files and their roles, and dependencies.

The PHP Extension Community Library (PECL)


PECL (pronounced "pickle") is a separate project that distributes PHP extensions (compiled code written in C, such as the PDO extension). PECL extensions are also distributed as packages and can be installed using the PEAR installer with the pecl command.

More information and all PECL packages can now be found on the PECL homepage.

JavaScript Editor Javascript validator     Web page editor