The Zend Framework team announces the immediate availability of version 1.9.0!
Kudos and thanks go out to the huge number of community contributors who helped make this release possible. This release has been almost entirely community driven, with the Zend team contributing primarily feature additions to existing components and working on maintenance of the project. If you submitted an issue report, a documentation improvement, a patch, a documentation translation, or a component, let it be known that you helped make this release what it is!
The big stories in this release can be summed up in two phrases: enterprise tools and PHP 5.3 support.
With Zend Framework making inroads to Enterprises, it's not surprising that
we are seeing a number of components geared towards the Enterprise. In this
release, we add two new components -- Zend_Queue and
Zend_Test_PHPUnit_Db -- as well as additions to existing
components -- Zend_Ldap, Zend_Rest_Route, and
Zend_Db_Adapter_Sqlsrv -- that target such development.
Zend_Queue provides a common API for interacting with queue
services such as Apache's ActiveMQ, MemcacheQ, and Zend Platform's Job
Queue. Zend_Test_PHPUnit_Db brings DBUnit support to our
Zend_Test offering, and provides integration with
Zend_Db. Our Zend_Ldap support is now much more
robust, and allows connectivity with MS ActiveDirectory and Novell's
eDirectory, as well as full CRUD and tree manipulation options.
Zend_Rest_Route allows developers to quickly develop RESTful
MVC applications, which are increasingly gaining traction when serving
public APIs. Zend_Db_Adapter_Sqlsrv interfaces with Microsoft's
SQL Server driver for PHP.
A month ago, the PHP team released the long-awaited PHP 5.3, which offers many improvements to the object model, as well as increased performance. Upgrading to PHP 5.3 is mostly straightforward, but, as with any release of this magnitude, sometimes takes some work. We have carefully audited our code and combed through our testbed in order to provide first-class compatibility for PHP 5.3 in Zend Framework -- while simultaneously continuing to support PHP 5.2.4 and above. Using Zend Framework on PHP 5.2 or 5.3 should be seamless and pose no issues for developers.
New features in Zend Framework 1.9.0 include:
Zend_QueueandZend_Service_Amazon_Sqs, which provide the ability to use local and remote messaging and queue services for offloading asynchronous processes. (Contributed by Justin Plock and Daniel Lo)Zend_Queue_Adapter_PlatformJobQueue, aZend_Queueadapter for Zend Platform's Job Queue. (Contributed by Zend Technologies)Zend_Rest_Route,Zend_Rest_Controller, andZend_Controller_Plugin_PutHandler, which aid in providing RESTful resources via the MVC layer. (Contributed by Luke Crouch, SourceForge)Zend_Feed_Reader, which provides a common API to RSS and Atom feeds, as well as extensions to each format, caching, and a slew of other functionality. (Contributed by Pádraic Brady and Jurrien Stutterheim)Zend_Db_Adapter_Sqlsrv, a Zend_Db adapter for Microsoft's SQL Server driver for PHP. (Contributed by Juozas Kaziukenas and Rob Allen)Zend_Db_Tableupdates to allow usingZend_Db_Tableas a concrete class by passing it one or more table definitions via the constructor. (Contributed by Ralph Schindler)Zend_Test_PHPUnit_Db, which providesZend_Dbsupport for PHPUnit's DBUnit support, allowing developers to do functional and integration testing against databases using data fixtures. (Contributed by Benjamin Eberlei)- Annotation processing support for
Zend_Pdf, as well as performance improvements. (Contributed by Alexander Veremyev) Zend_Dojocustom build layer support. (Contributed by Matthew Weier O'Phinney)- Dojo upgraded to 1.3.2.
- Numerous
Zend_Ldapimprovements, including full support for CRUD operations, search, and manipulating tree structures. (Contributed by Stefan Gehrig) Zend_Log_Writer_Syslog, aZend_Logwriter for writing to your system log. (Contributed by Thomas Gelf)Zend_View_Helper_BaseUrl, a view helper for returning the current base URL to your application, as well as for constructing URLs to public resources. (Contributed by Robin Skoglund and Geoffrey Tran)Zend_Datenow has support for theDateTimeextension. (Contributed by Thomas Weidner)Zend_Localehas been upgraded to CLDR 1.7. (Contributed by Thomas Weidner)Zend_Translatenow has plurals support for the Gettext, Csv, and Array adapters. (Contributed by Thomas Weidner)- PHP 5.3 compatibility, including support for new features in the mysqli extension. All components are fully tested on both PHP 5.2.4 and above, as well as PHP 5.3.0.
In addition, a large number of smaller improvements were made throughout the framework, and around 700 issues have been resolved or closed since the release of 1.8.0!
Any project the size of Zend Framework will inevitably run into issues where backwards compatibility breaks occur. While we strive to keep these to a minimum, we still needed to introduce several changes and updates in this version. They include the following:
- Zend_Http_Client
- A change was made in Zend_Http_Client to correct ZF-5744 (Multiple file uploads using the same $formname in setFileUpload). Instead of returning an associative array of element name => upload information pairs, it now returns an array of arrays, with the element name as part of the upload information. This allows multiple file uploads using the same element name.
- Zend_Config_Xml
-
One deciding factor for many when choosing which
Zend_Configformat to use for their application config had to do with support for constants. Our application recommendations include defining two constants,APPLICATION_ENVandAPPLICATION_PATH, and many developers have found it useful that in INI and PHP configurations, these constants are expanded during parsing.Zend_Config_Xmlnow supports this via an XML namespace as follows:
On the PHP side, nothing changes.<config xmlns:zf="http://framework.zend.com/xml/zend-config-xml/1.0/"> <production> <includePath><zf:const zf:name="APPLICATION_PATH"/>/library</includePath> </production> </config> - Zend_Translate_Adapter_Ini
-
Prior to PHP 5.3,
parse_ini_file()andparse_ini_string()handled non-ASCII characters in INI option values without an issue. However, starting in PHP 5.3, such options will now be silently dropped in the array returned. If you are upgrading to PHP 5.3 and usingZend_Translate_Adapter_Ini, this could cause potential issues for you. If you use UTF-8 or Latin-1 characters in your INI option keys (which are the message IDs for translation), you should either modify these to use only ASCII characters, or choose a different translation adapter. - Zend_Service_Amazon
-
Zend_Service_Amazonhas been updated to comply with the latest Amazon ECommerce APIs -- which, as of 15 August 2009, will require an API key for authentication. As a result, if you now useZend_Service_Amazon, you will need to pass your API key to theZend_Service_Amazonconstructor:
Otherwise, usage of this component remains the same.$amazon = new Zend_Service_Amazon($appId, $countryCode, $apiKey);
A detailed list of all features and bug fixes in this release may be found at:
Please join me in a hearty round of congratulations and acknowledgment of all contributors who helped make this release possible through code contributions, feedback, testing, documentation, translations, and issue reports! Without you, the community, Zend Framework would not be where it is today!


Comments (Login to leave comments)
another examples why this monolithic distribution methods sucks. obviously not every package is going to require 5.2.4 or higher .. so if each package would be available as a separate PEAR package, it would be much easier to communicate the required PHP version of each package.
We've taken the stance of one requirement for the whole project to ensure it all works together, whether or not you use all of it. While I understand that the current versions of RHEL and CentOS are still on 5.1.6, this, to my thinking, is a failure on their part. 5.2 has been out for almost 3 years at this point; they should be certifying newer versions of PHP for use with their LTS offering.
I am looking forward to some of the recent additions in this release and the ones just prior - such as the S3 stuff, Zend_Feed, etc.
Thanks again!
aside from this .. there actually certified PHP binaries for recent PHP version provided by Redhat .. unfortunatelty they are quite pricey since their APP-Stack offering also bundles JBoss .. meaning you are licensing tons more than most PHP shops need.
I will be happy if you would also add following components name to "create new issue" option on Issue tracker. :)
Zend_Queue
Zend_Rest_Route
Zend_Rest_Controller
Zend_Db_Adapter_Sqlsrv
Thanks!
Zend Framework 2.0 would be a really good point in time to introduce the one standard package distribution method that is supported by each and every PHP installation out-of-the-box.
Ranting aside, I think 1.9.0 is one hell of a great release ;-)
Oh, I see. that is not good. I am in the same boat as you. I guess I need to upgrade all my current projects to be compatible with PHP 5.2.4 or higher, or else this new Zend framework won't work. Oh what a headache! :(
Thanks for the information though!
This is the solution I have come up with for Red Hat only offering 5.1.6.
Hi Pixel,
Thank you so much for that valuable information. After reading all those rather depressing posts, your post comes as a breath of fresh air and gives me new hope. Thanks again!
Thanks.
Hello mwolff ,
Yes I agree 100% with your comment! Let detractors say whatever they want to say. True that this new release could have been made better, but then again, I just love the new cool features we get with this new framework! Keep up the good work folks!
I'm with MWOP on the compatibility issues. I believe that people need to keep up. You've got to upgrade for performance and compatibility issues. You've got to force progress. If you are in a comfort zone of an old version, get out of it. There are people out there still using PHP4 ffs. :/
<a href="www.revitolacnezinereviews.com>Revitol Acnezine<a/>