Zend Framework: Zend_Barcode

Die vor wenigen Wochen erschiene Version 1.10 des Zend Frameworks bringt eine neue interessante Komponente mit: Zend_Barcode. Damit lassen sich – wie man sich eigentlich denken kann – Barcodes (dt. Strichcodes) generieren. Und wieder einmal hat man es geschafft, eine doch recht komplizierte Funktion leicht zu verpacken.

<?php
set_include_path(__DIR__.'/lib'); // Pfad zum Zend Framework
require_once 'Zend/Barcode.php';
Zend_Barcode::factory("code39", "image", array("text" => strtoupper("basti-sama")))->render();

Mit diesen drei Zeilen lässt sich folgendes Bild generieren:
Barcode Beispiel

Wenn alle Entwickler ihre Anwendungen nach diesem einfachen Schema aufbauen würden, wäre Programmieren so einfach.

Zend Framework: Vor- und Nachteile

Zur Beginn ganz kurz der Hinweis, dass der Blog jetzt über eine neue Adresse erreichbar ist: http://web-union.de/

League4u Relaunch Juni 2010

Und jetzt kann ich es endlich ankündigen. League4u – mein erstes erfolgreiches Projekt – startet in die neue Bundesliga-Saison 2010/2011 nicht nur mit einem neuen Outfit, sondern auch mit einem komplett neuen Unterbau. Der teilweise veraltete Code (inzwischen über 2,5 Jahre) hatte es aber auch mal nötig. Als ich damals angefangen habe League4u zu programmieren, habe ich noch auf alte PHP4-Techniken gesetzt und anschließend immer wieder verbessert.

Als neue Code-Basis habe ich mich für das Zend Framework entschieden und nicht wie derzeit auf eine Eigenentwicklung. Aus dem Grund kommen wir jetzt auch zum eigentlichen Thema.

Nachteile und Vorteile des Zend Frameworks

Nachteile:

  • Für PHP-Einsteiger sehr kompliziert
    PHP-Einsteigern rate ich generell von Frameworks ab, weil es immer besser ist, die Sprache ohne große Bibliotheken kennenzulernen
  • Dokumentation umfangreich, aber schwierig auf eigene Anwendungen zu projizieren
  • Bei sehr großen Projekten etwas perfomancelastig
  • Lange Einarbeitungszeit

Vorteile:

  • Sehr viele verschiedene Komponenten
    Im Normalfall bietet das ZF bereits alles, was ein Entwickler an Funktionen braucht
  • Durchdachte und einheitliche Programmstruktur
  • Äußerst stabil durch ständige Tests
  • Unterstützung durch Zend
  • In allen Bereichen erweiterbar, Optionen lassen sich fast immer anpassen
  • Fortlaufende Weiterentwicklung (jeden Monat ein neues Release)
  • Dokumentation umfangreich, zu allen Kompononeten und in verschiedenen Sprachen verfügbar
  • Zwingt den Entwickler zur sauberen Programmierung (MVC-Design)

Wie man sieht überwiegen die Vorteile, aber bei der Entscheidung für ein Framework hängt es immer von der Anwendung ab, die entstehen soll. Wenn nur wenig Zeit zur Verfügung steht und das Projekt nicht allzu groß ist, ist eine Eigenentwicklung wohl die schnellere Variante. Für League4u ist es auf jeden Fall die passendere Lösung auf ein stabile Code-Basis zu setzen, auch wenn es ein bisschen mehr Zeit braucht.

HTTP-Authentifizierung über PHP

Ich muss euch leider schreiben, dass dies hier mein letzter Artikel auf diesem Blog ist … zumindest für dieses Jahr.

Einen Tag vor Silvester hab ich aber noch einen kleinen Beitrag über HTTP-Authentifizierung. Wer keine Lust hat, jedes Mal eine .htaccess-Datei für einen Passwortschutz anzulegen, der kann diesen kleinen Code-Schnipsel für seine PHP-Anwendung nutzen.

if(!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])
|| $_SERVER['PHP_AUTH_USER'] != 'benutzername' || $_SERVER['PHP_AUTH_PW'] != 'passwort')
{
	header('WWW-Authenticate: Basic realm="Authentifizierung"');
	header('HTTP/1.0 401 Unauthorized');
	echo '<h1>Error 401 - Unauthorized!</h1>';
	exit;
}

Das Ganze lässt sich natürlich noch an eine Datenbank anschließen und mit verschlüsselten Passwörtern verwenden…