Creole und PHP 5.2.4 verstehen sich nicht

Geschrieben von Dejan Spasic • Monday, 17. September 2007 • Kategorie: PHP , SymfonyKommentare (0)

In einem Artikel Warning about PHP 5.2.4 and Creole wird der Einsatz von Creole in Verbindung mit der PHP Version >= 5.2.4 gewarnt. Dadurch das der PHP Bug #41964 gefixed wurde, funktioniert die Methode MySQLResultSet::getTimestamp nicht mehr so wie gedacht. Hat z.B. die Spalte den Wert 0000-00-00 00:00:00, liefert strtotime nun false zurück. Vor der aktuellen PHP Version wurde 943905600 zurückgegeben, was als Datum 1999-11-30 entspricht. Wie dem auch sei, dadurch das false zurückgegeben wird, wird dementsrprechen eine Ausnahme geworfen.

Der Author empfiehlt diesen Hack einzufügen.

if ($this->fields[$column] == '0000-00-00 00:00:00') {
    // If the value is  ‘0000-00-00 00:00:00′, set it back to the value strtotime() returned before PHP 5.2.4
    $ts = 943916400;
}
else {
    $ts = {FNAMEL}">strtotime($this->fields[$column]);
}
 

Meiner Meinung nach, sollte zusätzlich noch nur nach das Datum ohne Uhrzeit geprüft werden.

if ($this->fields[$column] == '0000-00-00 00:00:00'
        || $this->fields[$column] == '0000-00-00') {
    // If the value is  ‘0000-00-00 00:00:00′, set it back to the value strtotime() returned before PHP 5.2.4
    $ts = 943916400;
}
else {
    $ts = {FNAMEL}">strtotime($this->fields[$column]);
}
Tags für diesen Artikel: , , ,

ezComponents unter symfony verwenden

Geschrieben von Dejan Spasic • Saturday, 15. September 2007 • Kategorie: ez Components , SymfonyKommentare (0)

Ich musste heute festellen das die sfEzComponentsBridge, dass von symfony zur Verfügung steht, nicht für die ezComponents gilt die über PEAR installiert wurden. Dies liegt daran, dass versucht wird die ezcBase über den Pfad Base/src/base.php zu laden. Was aber in meinem Falle nicht Korrekt ist. Da ich ezComponents über PEAR installiert habe, müsste der Pfad zu ezcBase ezc/Base/base.php lauten. Um das Problem zu lösen, erstellte ich eine eigene Bridge, die ich in das lib Verzeichnis des Projekts ablegte.

<?php
require_once 'ezc/Base/base.php';
class ezcAutoload
{
    public {FNAMEL}">static function autoload($class)
    {
        ezcBase::autoload($class);
    }
}

Jetzt muss man noch Autoloader in settings.yml eintragen.

autoloading_functions: 
     - [ezcAutoload, autoload]

Und zu guter Letzt, den Cache löschen.

symfony cc

Und weiter geht es.

Tags für diesen Artikel: ,

Warum symfony rockt

Geschrieben von Dejan Spasic • Wednesday, 12. September 2007 • Kategorie: SymfonyKommentare (0)

symfony frameworkFür den Fall das einige Leute immer noch nicht begriffen haben warum symfony so rockt, hat Thierry Schellenbach die 10, seiner Meinung nach, wichtigsten Gründe aufgezählt. Und ich kann nur dazu sagen, der hat ja so Recht :-)

Tags für diesen Artikel:

Die deutsche Übersetzung der Admin-Generator-Begriffe von Symfony

Geschrieben von Dejan Spasic • Friday, 20. July 2007 • Kategorie: SymfonyKommentare (4)

PHP5 Framework SymfonyHier, die in deutsch übersetzten Begriffe vom Admin-Generator in XLIFF-Format. Vieleicht kann es ja einer von euch ebenfalls gebrauchen ;-)

"Die deutsche Übersetzung der Admin-Generator-Begriffe von Symfony" vollständig lesen

Tags für diesen Artikel: , , ,

DBDesigner4, Phing, Propel und Symfony

Geschrieben von Dejan Spasic • Monday, 9. July 2007 • Kategorie: PHP , SymfonyKommentare (3)

Viele von euch kennen bestimmt den ER-Diagramm-Editor DBDesigner 4. Ein wunderbares Stück Software, wie ich finde. Mein Problem was ich mit DBDesigner4 in Verbindung mit Propel hatte war, dass ich nach dem erstellen des Diagramms auch die XML-Speizifikation des Datenbankschemas für den Propel-Generator erstellen musste. Das wiederrum, je nach dem wie groß das Projekt war, eine mühselige Arbeit sein konnte. Zudem trat das Problem des doppelten Inhalts auf, da, alles was in DBDesigner4 geändert wurde, auch in der XML-Spezifikation per Hand geändert werden musste. Wie man das Problem lösen kann wird hier näher beschrieben.

"DBDesigner4, Phing, Propel und Symfony" vollständig lesen

Tags für diesen Artikel: , , , ,