Was ist PEAR?

PEAR ist die Abkürzung für "PHP Extension and Application Repository" und wird ausgesprochen wie die englische übersetzung von "Birne". Der Zweck von PEAR ist es anzubieten:

PEAR ist ein Gemeinschafts-Projekt, geleitet von all den Entwicklern, welche auch die Software in PEAR entwickeln. Die PEAR-Gremien bestehen aus der PEAR Group, den Collectives und einem Präsidenten. Die Verfassung von PEAR (angenommen im März 2007) beschreibt diese Gremien hier. Das Projekt wurde begründete 1999 von Stig S. Bakken, seit dem schloßen sich dem Projekt viele weitere an.

Der PEAR-Leitspruch

PEAR schafft wiederverwendbare Komponenten, entwickelt innovative PHP-Konzepte, demonstriert vorbildhafte PHP-Programmierung und fördert Entwicklern.

Strukturierte Bibliotheken und Anwendungen in PHP

Der Quellcode in PEAR ist aufgeteilt in "Packages". Jedes Package ist ein selbständiges Projekt mit eigenem Entwickler-Team, Versionierung, Herausgabe-Zyklen und festgelegten Beziehungen zu anderen Packages (einschließlich Abhängigkeiten) Packages werden verteilt in Form von gepackten Daten (mit Hilfe von Tar und GZip). Jedes enthält eine beschreibende Datei, und wird mit Hilfe des PEAR Installer bei Ihnen lokal installiert.

Packages können mit einander in Beziehung stehen über explizit definierte Abhängigkeiten. Aber es existiert keine automatische Abhängigkeit zwischen Packages aufgrund des Package-Namens. Zum Beispiel: das Package "HTTP_Post" ist standardmäßig unabhängig von dem Package "HTTP". Abhängigkeiten zwischen Packages mit ähnlichen Namen sind nicht verboten und treten auf. Ein Beispiel hierfür ist das Package "DB_DataObject", dass vom "DB"-Package abhängt.

Der Stil-Leitfaden, die PEAR Coding Standards (kurz PCS), wurde geschaffen, um die Zusammenarbeit zwischen den PEAR-Entwicklern zu vereinfachen, die Qualität zu sichern und ein konsistentes Aussehen der Quellcodes aller PEAR-Packages zu gewährleisten.

Quellcode-Vertrieb und Package-Betreuung

Alle PEAR-Packages sind registiert auf einem zentralen Server auf pear.php.net und können auch von dort heruntergeladen werden. Andere Server, sogenannte "Channels", können ebenfalls Packages anbieten. Auf der Channel-Liste erhalten Sie weitere Informationen. Packages von diesen Channels werden nicht durch pear.php.net unterstützt.

Pear.php.net bietet eine HTML-basierte Benutzeroberfläche für die PEAR-Datenbank, und eine eine (aktuell) REST-basierte Schnittstelle für den maschinellen Zugriff. Das Herunterladen von Packages geschieht über HTTP. Andere Funktionen von pear.php.net sind bzw. werden sein:

  • die Verwaltung der Konten der PEAR-Beteiligten (unabhängig vom CVS-Server)

  • Die Package-Verwaltung

  • Die Release-Verwaltung von Packages

Packages werden vertrieben als gezippte Tar-Dateien, in dem sich auf jeden Fall eine XML-basierte Beschreibungs-Datei befindet. Diese Datei enthält Informationen über das Package, eine Liste der entahlten Dateien und ihrer Funktion, und Package-Abhängigkeiten.

Die PHP Extension Community Library (PECL)

PECL

PECL (englisch ausgesprochen "pickle") ist ein eigenständiges Projekt für PHP-Eweiterungen in C (wie z.B. die PDO-Extension). PECL-Erweiterungen werden als Packages ausgeliefert und auch über den PEAR-Installer installiert mit dem pecl-Kommando.

Weitere Infomationen und eine Übersicht über die PECL-Packages finden Sie auf der PECL-Homepage.