Ankündigung

Einklappen
Keine Ankündigung bisher.

4,17: „Herr Meyer, ein Paket für Sie“

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 4,17: „Herr Meyer, ein Paket für Sie“

    4,17:
    Ein jeder kennt das Problem: man möchte etwas umsetzen was sicherlich schon viele andere gemacht haben. Da kommen dann zwei Wege in Frage: entweder man programmiert es selbst oder man sucht sich fertigen Code den man im eigenen Programm verwenden kann und darf. Nun, über den Aufwand des ersten Weges brauchen wir nicht zu diskutieren, der wird in fast allen Fällen größer sein als beim zweiten Weg, dem Benutzen von fertigem Code. Machen wir uns also auf die Suche nach fertigem Code.

    Das erste Problem bei dieser Suche besteht darin die passende Formulierung für die Suchmaschine zu finden. Hat man endlich etwas passendes formuliert, so wird man mit Ergebnissen überhäuft. Jeder x-beliebige Hobby-Programmierer findet seinen Code natürlich super und publiziert ihn. Durchkämmen wir also die Ergebnisse und suchen einen Code der alle benötigten Features beinhaltet. Das gestaltet sich schwierig, denn wenn überhaupt eine Dokumentation vorhanden ist, dann wird diese von Code zu Code total unterschiedlich ausfallen. Hat man dann endlich einen Code gefunden, kommen schon die nächsten Punkte. Es kann Konflikte mit der PHP-Version oder anderem Code geben, die wiederverwendbarkeit ist nicht gegeben, und und und… Hinzu kommt noch das der Code Fehler enthalten kann und dazu der Support evtl. schlecht oder gar nicht vorhanden ist.

    Das alles sind Probleme, um die wir bei exotischen Sachen nicht drum rum kommen. Doch wie war das noch? Wir suchen doch Code den viele andere auch brauchen! Eben genau bei solchen Dingen hilft uns PEAR (PHP Extension and Application Repository). PEAR ist ein PHP Framwork was aus vielen einzelnen, voneinander unabhängigen, Paketen besteht. Aktuell sind es 562, darunter befinden sich zum Beispiel Pakete um:
    • Excel-Dateien zu schreiben
    • PDFs zu generieren
    • Mails zu versenden
    • BBCodes zu parsen
    • HTTP-Requests zu erzeugen
    • Validierungen zu managen
    • XML zu benutzen
    • Webservices zu nutzen
    • Datenbankzugriffe zu verwalten
    • und und und…


    Wenn wir ein einzelnes Paket nutzen möchten, so können wir dieses auch einzeln installieren und sind nicht auf den vollen Umfang dieses Frameworks angewiesen wie bei vielen anderen Projekten. Die Installation funktioniert dabei bei allen Pakten gleich und die Dokumentation lässt sich leicht finden und liegt immer in ähnlicher Form vor.

    Ich möchte jetzt eine Validierung für eine Usereingabe machen. Dabei soll geprüft werden ob es sich um eine gültige E-Mail-Adresse handelt. Ich suche mir also das Paket „Validate“ aus und möchte dies nun auf meinem XAMPP unter Windows benutzen.
    Ich öffne meine Eingabeaufforderung und gehe in das Verzeichnis xampp\php. Dort gebe ich folgenden Befehl ein:
    Code:
    pear install validate
    Und weil der Vorführeffekt es so will, hab ich gleich ein Paket gefunden was sich noch im Beta-Status befindet. Deshalb bekomme ich die Meldung:
    Code:
    Failed to download pear/validate within preferred state "stable", latest release is version 0.8.4, stability "beta", use "channel://pear.php.net/validate-0.8.4"  to install
    install failed
    Also versuche ich es gleich nochmal, wie in der Meldung vorgeschlagen, mit
    Code:
    pear install channel://pear.php.net/validate-0.8.4
    Und siehe da:
    Code:
    WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
    Did not download optional dependencies: pear/Date, pear/Net_IDNA, use –alldeps to download automatically
    pear/Validate can optionally use package "pear/Date"
    pear/Validate can optionally use package "pear/Net_IDNA" (version >= 0.7.1)
    downloading Validate-0.8.4.tgz ...
    Starting to download Validate-0.8.4.tgz (20,809 bytes)
    ........done: 20,809 bytes
    install ok: channel://pear.php.net/Validate-0.8.4
    Das Paket ist jetzt also installiert. Man findet nun eine PHP Datei in xampp\php\PEAR\PEAR namens Validate.php und da dieses Verzeichnis bei XAMPP standardmäßig als Include-Path gesetzt ist, können wir das Paket nun wie folgt verwenden:
    PHP-Code:
    Require_once('Validate.php');
    $validator = new Validate(); 
    Mit Hilfe der Dokumentation finden wir schnell was wir suchen:
    PHP-Code:
    $email "mymail@example.com"// User Eingabe
    Require_once('Validate.php');
    $validator = new Validate();
    if(
    $validator->email($email)){
      echo 
    "E-Mail-Adresse ok";
    }else{
      echo 
    "Bitte geben sie eine gültige E-Mail-Adresse ein!";

    Schon haben wir unser erstes Pakte installiert und benutzt. So einfach funktioniert es auch mit den anderen 561 Paketen.
    Viel Spaß beim stöbern und ausprobieren.


  • #2
    "dem Benutzen" wenn ich nicht irre, 1. Absatz, letzte Zeile.

    Schönes Türchen, gut geschrieben wie immer

    Kommentar


    • #3
      Zeilenangaben bei HTML-Seiten sind schlecht.
      Der Nikolaus hat das aber korrigiert.
      Refining Linux: “Performing Push Backups – Part 1: rdiff-backup

      Kommentar

      Lädt...
      X