Bananas Development Blog: share your thoughts

Dependency Tracking (Was braucht meine Software eigentlich ?)

Man entwickelt software und programmiert so fröhlich vor sich hin, aber an alle Anforderungen denkt man nicht immer.

Nun gibt es was dolles für das Zend Framework.

Zend Framework Automatic Dependency Tracking

When you develop or deploy an application, dependency tracking is one of the problems you must solve. Keeping track of dependencies for every application you develop is not an easy task. To solve this problem I’ve created Zend_Debug_Include, a Zend Framework component that supports automatic dependency tracking.


Kurz zusammengefasst macht die Erweiterung eine Auflistung was alles von ZendFramework benötigt wird.

Banana
out.

Zend Framework Architecture

Wie sieht den das ZendFramework eigentlich so "innen" den so aus ?
Wie ist es aufgebaut ?

Dieser Artikel gibt da ein wenig Aufschluss darüber.

Before we begin our exploration of the architecture of the Zend Framework (ZF), it is important to discuss how a typical MVC application is built. Examining and understanding the architecture of an MVC Web application allows you to make more contextually sound choices when building your application.


Zend Framework Architecture ( PHP::Impact ( [str Blog] ) )

Banana
out.

Segmentaion fault on preg_replace in Zend_Db_Statement

So ich mag das ZF da es ja so viele fertige Möglichkeiten bietet.

Aber manchmal habe ich das gefühl das es einfach ein wenig übertreibt.

Bin gerade auf folgenden Bug gestoßen:
Segmentaion fault on preg_replace in Zend_Db_Statement

Da muss man erster mal darauf kommen. Erster dachte ich es seien irgendwelche Zeichen in der SQL oder so, aber nein es fing ab einer bestimmten SQL länge an.
Mit Hilfe von ZendStudio und der Debug funktion konnte ich dann das Problem bestimmen.

Es ist die Zeile 187 in der Zend/Db/Statement.php Datei (ZF version 1.7.1).
Dieser preg_replace fällt da auf die Nase und in der erro log des apache steht nur "[notice] child pid 7426 exit signal Segmentation fault (11)"

Nun ja da es ja schon dieses Bug gibt und bisher keine Lösung musste ich mir selber helfen.

Also habe ich einfach die Zeile 108 in der Zend/Db/Statement.php auskommentiert. Dies ist die Zeile in der das SQL mit der funktioner _parseParameters aufbereitet wird (oder was auch immer.....).
Bisher ging dann alles gut und auch das SQL machte dann keine Probleme mehr.

So nun geht es weiter.

Banana
out.

Zend Framework, Zend_DB und ? in dem SQL

Sollte irgend jemand schon mal den Fehler bekommen haben:
Invalid parameter number: no parameters were bound" when using ' and ? in where clause

dem kann geholfen werden.

Dazu ist aber folgendes nötig. Man braucht mindestens MySQL 4.1.3 sowie die mysqli extension von PHP. Denn damit sollte der Fehler nicht mehr kommen.

Hat mich schon ne weile genervt, da ich einfach nicht dahinter gekommen bin warum.

Hier ist sogar ein Bug dazu:
Invalid parameter number: no parameters were bound" when using ' and ? in where clause

Dazu sollte man beachten, dass die mysqli Extension die bessere Wahl ist, wenn man aktuellere MySQL Datenbanken verwendet.

banana
out.

ZendFramework Laden

Die Anleitung beschreibt zwar die Möglichkeiten wie aber gibt kein eindeutiges Beispiel.

Hier ist wie man das Zend Framwork einbindet.
// load the zend Framework
define("LIB_DIR","lib");
$include_path = get_include_path();
if(!ini_set('include_path',$include_path.PATH_SEPARATOR.ABSOLUTE_PATH.LIB_DIR)) {
die('Failed to set the include path. Check you php configuration.');
}

In dem Verzeichnis "lib" liegen bei mir alle bibilotheken die ich so brauche.
Dabei ist zu beachten, dass das Zend Framework in das Zend Verzeichnis reinkopiert werden muss, da es intern auch diesen Namen verwendet um Dateien einzubinden.

Hier mal die Verzeichnisstrucktur:
lib/
lib/Zend
lib/Zend/Acl
lib/Zend/....


Also muss der include Path um das Verzeichnis lib erweitert werden.
Die Klassen des Zend Frameworks werden dann mit
require_once 'Zend/Mail.php';

geladen.

Zend Framework Tutorial

Hier mal ein deutsches Tutorial zu Zend Framework:

Zend Framework Tutorial

Zend Framework

Nun nach dem ich lange mit dem XP-Framework rum gemacht habe und nicht sehr zufrieden bin damit, werde ich mich mal in das Zend Framework einarbeiten.

Bisher finde ich das alles ganz gut und es ist auch gut dokumentiert.

Download und Dokumentation:
Zend Framework