Ändern des Application Prefix eines Zend Framework Projekts mittels Zend Tool

Zend Framework LogoSoeben habe ich mittels Zend Tool ein neues Projekt erstellt, bei dem ich aber nun den Application Prefix von standardmäßig „Application“ auf „Wolfuli“ umändern wollte. Manuell ist das natürlich superumständlich, aber es gibt auch ein Kommando dafür:

zf change application.class-name-prefix Wolfuli_

Dauert einen kleinen Moment und gibt dann die Ausgabe:

Note: All existing models will need to be altered to this new namespace by hand
application.ini updated with new appnamespace Wolfuli_

Das wars 🙂

Information on the minimum required version of PHP of each component of Zend Framework

German: Dieser Artikel ist auf Englisch, da er an ein internationales Publikum gerichtet ist.

In one of the latest posts on the Zend Framework maillinglist there was a question regarding the minimum required version of PHP for the current version Zend Framework (1.9.0). As of Version 1.7.0 of ZF the documentation recommends versions >=5.2.4 for PHP. Some users are stuck with php5.1.6 (e.g. those running Redhat Linux) and these need to know the components that could be problematic.

To see the minimum required version of PHP for each package of ZF, i’ve created a shellscript which uses PHP_CompatInfo from Pear. It doesn’t take the dependencies into account!

For your convinience i’ve created a website with these infos:

http://zfcompat.wolf-u.li/

By the way for all users of Redhat with PHP 5.1.6: In Zend 1.9.0 the following files that need a higher version than 5.1.6. Be aware, that some components are dependend on these files, e.g. Zend_Cache_Backend is used in about 40% of all components (see comment by Thomas below).

ZendCacheBackend.php : 5.2.1
ZendCryptDiffieHellman.php : 5.2.0
ZendCryptRsaKeyPrivate.php : 5.2.0
ZendCryptRsaKeyPublic.php : 5.2.0
ZendCryptRsa.php : 5.2.0
ZendFileTransferAdapterAbstract.php : 5.2.1
ZendNavigationPage.php : 5.2.0
ZendOpenId.php : 5.2.0
ZendPdfPage.php : 5.2.0
ZendPdf.php : 5.2.0
ZendTestPHPUnitDbOperationTruncate.php : 5.2.1

Thanks to Stefan Sturm for this list!

Still, you should run your own tests and check if your application is really working. The Website above just shows the possiblity to run a specific component under a specific php-version and isn’t taking dependencies between components into account. Or simply update to the current version of PHP 😛

Zend Framework 1.9.0 ist erscheinen

Das Zend Framework ist in der Version 1.9.0 erschienen und bringt immer mehr unternehmensnahe Komponenten mit. So können mit Zend_Queue und Zend_Service_Amazon_Sqs die Queuing-Services Apache ActiveMQ, MemcacheQ, Zend Platform’s Job Queue und Amazon SQS in Anspruch genommen werden. Zend_Ldap arbeitet nun deutlich besser mit dem Microsoft Active Directory und dem Novell eDirectory zusammen. Zend_Db_Adapter_Sqlsrv ist einer neuer Datenbankadapter für den Microsoft SQLServer.
Aber auch die neue Komponente Zend_Feed_Reader ist sehr interessant, da diese eine einheitliche Schnittstelle zu allen Feeds im RSS und Atom-Feeds bietet. Eine weitere, schon lang fehlende Komponente ist Zend_View_Helper_BaseUrl, welche die URL zum public-Verzeichnis zurückgibt und auch URLs aufbauen kann.
Zudem wurden nun alle Komponenten gegen PHP5.3 getestet und sind diesbezüglich validiert. Der Support für PHP5.2 ist jedoch deswegen nicht aufgehoben, dieser ist bis auf weiteres gegeben. Das komplette Changelog ist hier zu finden.

Ein paar API-Changes waren dabei, die hier nachgelesen werden können.

Das Release ist über das SVN oder die offizielle Seite zu beziehen. Die Zeile für svn:externals lautet:

library/Zend http://framework.zend.com/svn/framework/standard/tags/release-1.9.0/library/Zend/

Zend Framework 1.8.2 ist erschienen

Das Zend Framework ist in der Version 1.8.2 erschienen, was einige Fehler behebt, welche hier nachzulesen sind.

Mit der Einführung von Zend_Loader_Autoloader in Version 1.8.0 kamen viele Fehler auf, welche nun mit diesem Release behoben sein sollten. In allen Fällen, wo Zend_Loader::loadClass() im Framework hartcodiert war, wird nun per class_exists() zunächst geprüft und der Autoloader getriggert. Das soll das Schreiben von eigenen Adaptern und Plugins vereinfachen.

Ausserdem wurde eine neue Seite für die Changelogs eingeführt:

http://framework.zend.com/changelog

Das Release ist über das SVN oder die offizielle Seite zu beziehen. Die Zeile für svn:externals lautet:

library/Zend http://framework.zend.com/svn/framework/standard/tags/release-1.8.2/library/Zend/

Zend Framework: Zend_Gdata meldet NoLinkedYoutubeAccount per Exception

Auf der Maillingliste des Zend Frameworks kam die Frage auf, warum der folgende Fehler auftritt:

Fatal error: Uncaught exception 'Zend_Gdata_App_AuthException' with message 'Authentication with Google failed. Reason: NoLinkedYouTubeAccount' in
Zend/Gdata/ClientLogin.php:174
Stack trace: #0 index.php(19):
Zend_Gdata_ClientLogin::getHttpClient('somegoogleaccount@gm...', '******', 'youtube', NULL, 'MySource', NULL, NULL, 'https://www.goo...') #1 {main} thrown in /var/wwwZend/Gdata/ClientLogin.php on line 174

Die Lösung ist einfach und hier beschrieben:

  • Diese Seite ansurfen und einloggen
  • Auf der nächsten Seite einen existierenden Youtube-Account angeben oder einen neuen erstellen lassen
  • Dann den „Hinzufügen“-Button klicken
  • Jetzt wird man eingeloggt und zur Youtube-Homepage umgeleitet

Das wars 😉

Zend Framework 1.8.1 ist erschienen

Kurz nach dem Release der Version 1.8 des Zend Frameworks ist nun ein kleines Update auf 1.8.1 im SVN von Zend erschienen. Die neuen Features sind sehr hilfreich, insbesondere die Generierung von Modulen in Zend_Tool. Das Changelog:

  • Zend_Loader::registerAutoload() dient nun als Proxy zu Zend_Loader_Autoloader, und markiert die Instanz als als Fallback-Autoloader. Dies soll gleichwertige Funktionalität sicherstellen und senkt die Anzahl der „Deprecated“-Anmerkungen auf eine. (Beitrag)
  • Viele Bugfixes und Verbesserungen in Zend_Application.
  • Generierung von Modulen in Zend_Tool (Beitrag)
  • Addition of strong object typing capabilities to Zend_Amf (Bitte selbst übersetzen :P)
  • Viele weitere Übersetzungen des Handbuchs!

Für SVN-externals lautet die Zeile für dieses Release:

library/Zend http://framework.zend.com/svn/framework/standard/tags/release-1.8.1/library/Zend/

Zend Framework 1.8: Einführung in Zend_Tool

Nach dem Erscheinen von Zend Framework 1.8 habe ich mir mal Zend_Tool näher angesehen. Dieser Teil des Frameworks bietet auf Kommandozeilenebene eine Möglichkeit des Rapid Application Development (RAD), was sich laut Wikipedia wie folgt definieren lässt:

Um Softwareentwicklungen flexibler zu gestalten und sich an schnell ändernde Anforderungen anpassen zu können, wurde in den 1980er Jahren u.a. von Barry Boehm die Idee des Rapid Application Development (RAD) entwickelt. Sie sieht ein prototypisches Vorgehen vor, bei dem Anforderungen an eine Software gesammelt und möglichst schnell in ausführbaren Code umgesetzt werden. Dieser wird dem Auftraggeber in einer relativ frühen Phase vorgelegt, um Missverständnisse bei den Anforderungen sowie hinzugekommene Anforderungen zu identifizieren. Die Änderungen werden in einer weiteren Version implementiert und wiederum vorgelegt. Diese Zyklen werden so oft durchlaufen, bis der Auftraggeber mit der Software zufrieden ist und diese abnimmt.

Zend Framework 1.8: Einführung in Zend_Tool weiterlesen