Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

16.11.05 / Page 1 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Komponenten für PHP PHP-Applikationen mit PEAR.

Ähnliche Präsentationen


Präsentation zum Thema: "16.11.05 / Page 1 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Komponenten für PHP PHP-Applikationen mit PEAR."—  Präsentation transkript:

1 / Page 1 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Komponenten für PHP PHP-Applikationen mit PEAR

2 / Page 2 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Über mich Stefan Neufeind, aus Neuss Zertifizierter PHP-Entwickler PEAR-Maintainer seit 2 Jahren Tätig für SpeedPartner GmbH Webhosting, Serverhousing, Rackspace Business-DSL, Einwahl/Roaming Domains Consulting Entwicklung (auch PHP mit PEAR)

3 / Page 3 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Agenda Was ist PEAR? PEAR-Pakete PEAR installieren / Der PEAR-Installer Neu in PEAR 1.4.x PEAR-Beispiel PEAR-Website Hilfe zu PEAR Links

4 / Page 4 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Was ist PEAR? PHP Extension and Application Repository DAS Repository für PHP Gegründet 1999 von Stig S. Bakken Sammlung von hochqualitativen PHP-Komponenten 485 Paketen (stark steigend) in 41 Kategorien 252 Paket-Betreuer, 877 Entwickler 100% Open Source (Lizenzen: PHP, Apache, BSD, LGPL) Tools für Kommunikation und Zusammenarbeit

5 / Page 5 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Was ist PEAR? Besteht aus: Website (Präsentation, Backend für Installer,...) Installer (Kommandozeile, Web, GUI) Paketen Dokumentation Support Qualitätssicherung (PEAR-QA)

6 / Page 6 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Pakete Keine Applikationen (fast keine :-) ) sondern Komponenten für einzelne Aufgaben Datenbankabstraktion Webservices Internationalisierung Netzwerk / Internet Grafikerzeugung / -bearbeitung Prüfroutinen ( adressen, IBAN, Kreditkarten,...)

7 / Page 7 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Pakete Komponenten universell einsetzbar Kooperation statt konkurrierende Pakete „Sauberes“ Design Klare Regeln zur Qualitätssicherung und Wartbarkeit Verwendung in zahlreichen Applikationen Business-ready

8 / Page 8 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR installieren PEAR-Installer seit PHP bundled Automatisch verfügbar, auch auf Windows :-) Standardmäßig auch beim selbst-kompilieren aktiviert Für frühere PHP-Versionen / Distributionen ohne PEAR einfach von installierenhttp://go-pear.org z.B. lynx -source | php -q oder go-pear-Source speichern und im Browser öffnen Hinweis: PEAR-Pfad sollte im include_path (php.ini) enthalten sein

9 / Page 9 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Installer Einheitliche Installation-Umgebung für PHP-Code (PEAR) und C-Erweiterungen (PECL, Auf vielen Plattformen lauffähig (Linux, Windows,...) Verschiedene Oberflächen: Kommandozeile, Web, GUI Verwaltung von Paket-Abhängigkeiten Tools für Entwickler

10 / Page 10 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Installer Installation von Paketen (z.B. Kommandozeile) mit Überprüfung von Abhängigkeiten, Konflikten etc.: Ermöglicht auch optionale Komponenten, Versionsabhängigkeiten,... # pear install Validate_Finance-alpha Did not download dependencies: pear/Validate, use --alldeps or -- onlyreqdeps to download automatically pear/Validate_Finance requires package "pear/Validate" (version >= 0.5.0) No valid packages found install failed

11 / Page 11 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Installer Installation von Paketen: # pear install Validate-alpha Did not download dependencies: pear/Date, use --alldeps or -- onlyreqdeps to download automatically pear/Validate can optionally use package "pear/Date" downloading Validate tgz... Starting to download Validate tgz (9,862 bytes).....done: 9,862 bytes install ok: channel://pear.php.net/Validate # pear install Validate_Finance-alpha downloading Validate_Finance tgz... Starting to download Validate_Finance tgz (5,608 bytes).....done: 5,608 bytes install ok: channel://pear.php.net/Validate_Finance-0.5.0

12 / Page 12 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Neu in PEAR 1.4.x Automatische Auflösung von Abhängigkeiten --onlyreqdeps / -o --alldeps / -a Abhängigkeiten auf externe Pakete Verweise per URL Channels Verwendung von mehreren Channels Möglichkeit eigenen Channel zu eröffnen Mirroring

13 / Page 13 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Neu in PEAR 1.4.x Mehrere Module in einem Paket Post-install-Skripte (inkl. Interaktion), z.B. für Initialisierung Datenbanken Dateien ins Webroot verschieben ReST-Webservice PHAR-Support Nur eine PHP-Datei inkl. Archiv, dynamischem Entpacken,... Remote-Installation Installation von binären PECL-Paketen (z.B. auf Windows)

14 / Page 14 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Channels Weitere Kommandos für Channels: pear channel-discover pear channel-alias channel://... example pear update-channels Channel-Beschreibung per channel.xml # pear list-channels Registered Channels: ==================== Channel Summary pear.php.net PHP Extension and Application Repository pecl.php.net PHP Extension Community Library __uri Pseudo-channel for static packages

15 / Page 15 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Channels pearadise.net: Portal für PEAR- Channels

16 / Page 16 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt ReST-Webservice PEAR <=1.3 verwendete XML-RPC für Repository-Zugriff Etabliert, aber teilweise komplex PEAR 1.4 verwendet ReST Text-basiert, statische Files möglich Weniger Traffic Schnellere Antwortzeiten Vereinfachte API Wesentlich flexibler

17 / Page 17 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Post-install Skripte Ermöglichen umfangreiche Aktionen nach Installation Sehr flexible API Skript-Aufrufe in package2.xml definiert Aufgaben können an bestimmte Dateien gebunden werden Vordefinierte Aktionen verfügbar Eigene Aktionen über PHP-Skripte implementierbar Abarbeitung in einzelne Schritte gegliedert Interaktion zwischen Benutzer / PEAR installer

18 / Page 18 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Beispiel Nutzung von PEAR-Paketen, z.B. Grapherzeugung mit PEAR::Image_Graph: require_once 'Image/Graph.php'; // create the graph $Graph =& Image_Graph::factory('graph', array(400, 300)); // add a TrueType font $Font =& $Graph->addNew('font', 'Verdana'); // set the font size to 11 pixels $Font->setSize(8); $Graph->setFont($Font); [...]

19 / Page 19 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Beispiel $Graph->add( Image_Graph::vertical( Image_Graph::factory('title', array('Smoothed Area Chart Sample', 12)), Image_Graph::vertical( $Plotarea = Image_Graph::factory('plotarea'), $Legend = Image_Graph::factory('legend'), 90), 5) ); $Legend->setPlotarea($Plotarea); // create the dataset $Dataset =& Image_Graph::factory('random', array(10, 2, 15, true)); // create 1st plot as smoothed area chart using the 1st dataset $Plot =& $Plotarea->addNew('Image_Graph_Plot_Smoothed_Area', array(&$Dataset));

20 / Page 20 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Beispiel // set a line color $Plot->setLineColor('gray'); // set a standard fill style // output the Graph $Graph->done(); ?>

21 / Page 21 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Beispiel

22 / Page 22 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Überblick über einige Dienste/Features: Struktur des Repository (Pakete) Paket-/Release-Verwaltung Abstimmungstool: PEAR Proposal-System („PEPr“) [... ausführliche Live-Demo am PEAR-Stand...]

23 / Page 23 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Struktur des Repository (Pakete)

24 / Page 24 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Struktur des Repository (Pakete)

25 / Page 25 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Paket-/Release-Verwaltung

26 / Page 26 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Paket-/Release-Verwaltung

27 / Page 27 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Abstimmungstool: PEAR Proposal-System („PEPr“)

28 / Page 28 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Abstimmungstool: PEAR Proposal-System („PEPr“)

29 / Page 29 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Abstimmungstool: PEAR Proposal-System („PEPr“) Voting durch erfahrene PEAR-Entwickler Verwaltung abgegebener Stimmen Paket akzeptiert ab Summe von +5 Stimmen Tracking von Kommentaren

30 / Page 30 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Website / Präsentation Darstellung von Komponenten / Applikationen Verwaltung von Downloads / Releases Mitgliederverwaltung Verwaltung von Betreuern, Helfern,... Dokumentation Verwaltung von Dokumentationen Automatische Generierung von Dokumentation (API-docs) Bereitstellung von versch. Formen (Sprachen, Dateiformate)

31 / Page 31 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt PEAR-Website Kommunikation Mailinglisten / Foren Chat (z.B. IRC) Bugtracker Abstimmungstool: PEAR Proposal-System („PEPr“) Versionsverwaltung (http://cvs.php.net/pear/)http://cvs.php.net/pear/ Gemeinsames Arbeiten am „gleichen“ Code Verwaltung von Versionsständen / Änderungen

32 / Page 32 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Hilfe zu PEAR 1.PEAR Website 2.Paket-Website 3.PEAR-Dokumentation: 4.Support-Mailingliste: 5.IRC channel: 6.Direkter Kontakt zum Maintainer (siehe Paket-Website) 7.PEAR QA:

33 / Page 33 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Links PEAR-Website: PECL-Website: PEAR-Dokumentation: Support-Mailingliste: IRC channel: Portal für PEAR-Channels: Beispiele / Screenshots für PEAR::Image_Graph: Informationen zu ReST:

34 / Page 34 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Danke für Ihre Aufmerksamkeit! Aktuelle Folien verfügbar unter: Fragen? neufeind (at) speedpartner.de


Herunterladen ppt "16.11.05 / Page 1 PHP-Applikationen mit PEAR Stefan Neufeind LinuxWorld 2005, Infobühne 2005, Frankfurt Komponenten für PHP PHP-Applikationen mit PEAR."

Ähnliche Präsentationen


Google-Anzeigen