Говоря в общем, PEAR является хранилищем расширений и РНР-приложений. На своем Web-сайте PEAR определяется как "структура и система распространения повторно используемых PHP-компонентов". Но кроме этого, со временем PEAR стало представлять нечто больше, нежели просто библиотеку классов РНР. Помимо PEAR существуют также и другие каталоги классов и кодов РНР, поэтому нам следует разобраться, чем же PEAR отличается от них?
Библиотека кода
Первое, и самое главное определение для PEAR — это библиотека повторно используемого кода на РНР. Весь код в этой библиотеке хранится в так называемых пакетах (package). Каждый пакет представляет отдельный проект, разработанный командой проектировщиков, которая занимается разработкой его версий и написанием документации по этому пакету. В отличие от всех остальных библиотек кодов, библиотека PEAR уникальна в плане несения ответственности за разрабатываемые пакеты. Члены инициативной команды по контролю качества (Quality Assurance Initiative — QA Initiative) следят за тем, чтобы код, разрабатываемый сообществом пользователей, обладал высоким уровнем качества. Первый устойчивый выпуск любой основной версии каждого пакета должен быть одобрен членами QA. Кроме этого, члены QA проверяют выпуск на наличие какихлибо ошибок и внимательно следят за развитием каждого пакета, иногда самостоятельно решая проблемы, если связаться с разработчиками данного пакета невозможно. Подобная практика, помимо всего прочего, ставит PEAR отдельно от других библиотек в том смысле, что в ней предъявляются высокие требования к качеству разрабатываемого кода.