Dienstag, 6. Januar 2009

entwickler.com Magazine Konferenzen Entwickler Akademie Entwickler-Forum Jobbörse Bücher
Software & Support Verlag





Ab 26. Januar 2005 am Kiosk!
Titelthema: Flash on-the-fly
Ausgabe: 2.2005


Startup
Conditional GET mit PHP: Bandbreite durch HTTP-Header sparen
Beim Anzeigen einer Website werden alle einzelnen Bestandteile wie HTML, Grafiken, Stylesheets und JavaScript auf dem Client geladen und vom Browser temporär auf der Festplatte gespeichert. Wird eine dieser Dateien erneut benötigt, so wird zuerst im lokalen Browser-Cache überprüft, ob die Datei dort schon verfügbar ist. Bei statischen HTML-Seiten oder Bildern ist dies sehr häufig der Fall und in den meisten Fällen auch sehr hilfreich, da dadurch Bandbreite gespart wird. Da es sich bei PHP-Seiten allerdings meistens um dynamisch erzeugte Inhalte handelt, werden diese standardmäßig nicht gecacht. Dieser Artikel wird Ihnen zeigen, wie Sie dieses Verhalten von PHP aus steuern können.
Inspiziert
Introspektion mit PHPs neuem Reflection API

Enterprise
Saubere Trennung: Jakarta Struts für PHP
Es gibt in PHP mittlerweile viele Möglichkeiten, eine Trennung des Programmcodes von der eigentlichen HTML/XML-Ausgabe zu erreichen. Warum aber sollte man sich nicht eine viel genutzte Lösung einer anderen Programmiersprache zunutze machen? Hierbei ist die Rede von dem Apache-Open-Source-Projekt Jakarta Struts. Viele Java-Entwickler werden jetzt wahrscheinlich die Ohren spitzen. Struts ja, aber in PHP?
Verkleidungskünstler: Das Dekorierer-Entwurfsmuster
Softwareentwicklung ist ein dynamischer Prozess: Noch während der Entwicklung ändern sich permanent die Anforderungen, und allzu oft wünscht der Kunde noch in allerletzter Minute die Erweiterung vorhandener Features für besondere Aufgaben. Spätestens hier rächt sich schlechtes Anwendungsdesign, wenn aufgrund von Spezialfällen bereits entwickelter Code umgeschrieben oder schlimmstenfalls sogar verworfen wird. Fälle, in denen sich das Dekorierer-Muster förmlich anbietet

Tools & Tipps
Lesestoff für PHP-Lover
  • PHP 5 und MySQL 5
  • High Performance MySQL / Hardening Apache

Titelthema
Ming: PHP verleiht (Flash-)Flügel
Flash hat sich still und heimlich zum De-Facto-Standard-Format für Vektorgrafiken im WWW entwickelt. Nun hat das W3C mit SVG zwar einen Gegenentwurf zu Flash gestartet, bis dieses Format aber von dem Großteil der Browser unterstützt wird, dürfte es noch eine Weile dauern. Ganz anders verhält es sich bei Flash. Das Flash-Plug-in wird von den meisten Browsern unterstützt und auch meistens in der Standardinstallation mitgeliefert. Bereits seit den frühen 4-er-Versionen von PHP können Flash-Dateien mit der swf-Extension dynamisch erzeugt werden. Mit Version PHP 4.0.5 gibt es aber mit Ming eine weitere Variante.

Development
Tauschgeschäft: Mit RemoteScripting und XMLHttpRequest den Datentransfer minimieren
Das permanente Nachladen einer Seite im Browser ist schon sehr lästig. Wäre es nicht schön, wenn man ein Formular nur einmal laden müsste und bräuchte dann nur noch die Daten mit dem Server auszutauschen, die sich auch wirklich ändern? Kein Problem! Nicht nur, dass es möglich ist, es gibt sogar mehr als eine Möglichkeit, diese Idee umzusetzen. Zum einen kann man unsichtbare IFrames verwenden (RemoteScripting) oder man kann sich der XMLHttpRequest-Methode bedienen. Im folgenden Artikel werden beide Wege näher betrachtet und entsprechende Open-Source-Umsetzungen beider Methoden vorgestellt.
Der in den Liedern liest
Das Innenleben von MP3-Dateien
Alles neu?
Interview mit Bard Farstad Sandro Zic
Auf Fehlersuche
Qualitätssicherung - Besser PHP programmieren

XMLextra
Neues DOMizil: DOM XML in PHP 5
Die DOM-Bibliothek wurde mit PHP 5 einem kompletten Redesign unterzogen. In PHP 4.x kamen mit jeder neuen PHP-Version neue Funktionen oder Methoden hinzu. Dadurch ist DOM wild gewachsen und es wurde ein bisschen unübersichtlich. DOM in PHP 5 ist wie ein Paukenschlag: Die DOM-Bibliothek bietet eine bessere Kompatibilität zum DOM-Standard des W3-Konsortiums. PHP 5 unterstützt dabei DOM Level 1 und 2 sowie Teile von Level 3 (das noch nicht als Standard verabschiedet wurde).
Frisch verheiratet
Mozilla, MySQL und RDF - ein Dreamteam

Datenbanken
Eleganter Ohrschmuck: Datenbankabstraktion in PHP 5 mit Creole
Die Datenbankabstraktion wird immer wichtiger. Nicht zuletzt macht sich das an den immer zahlreicher werdenden Ansätzen dazu bemerkbar. Klassiker wie PEAR::DB, PEAR::MDB und ADOdb haben sich längst durchgesetzt. Dennoch schrecken viele Entwickler vor der Datenbankabstraktion zurück und setzen stattdessen auf selbstprogrammierte Klassen. Schließlich leisten diese dann genau das, was man will und man muss keine Kompromisse eingehen. Aber dennoch: Datenbankabstraktionen sind nicht nur interessant, sondern werden wohl immer mehr zum Rüstzeug eines jeden Entwicklers gehören. Daher wird in diesem Artikel ein Blick auf Creole geworfen, dem neuen Abstraktions-Layer für PHP 5.

Solutions
PHP als Mailverwerter: E-Mails in Oracle-Datenbank mit PHP
Ein auf Oracle HTML DB basierendes Informationssystem erhält stetig Statusmeldungen überwachter Oracle-Datenbanken per E-Mail, die unmittelbar verarbeitet und in die Oracle-Datenbank der Anwendung eingefügt werden sollen. Unter Berücksichtigung der von Oracle unterstützten Programmiersprachen und Werkzeuge stellt PHP in Verbindung mit dem Oracle Call Interface (OCI) auf einem Linux-Server eine geeignete Lösung für diese Aufgabe dar.



Software & Support Verlag GmbH