Saturday
8
March
2008

Zend Framework 1.5 RC2

Hy fellows,

the newest Version 1.5 for Zend Framework is waiting for release.
The code is already freezed and with all administrative work we will have it ready about monday 10.March.

Not only several bug fixes have been made, but also some feature enhancements and even new components.
To give you a small appetizer:

* New Zend_Service_Nirvanix component
* New Zend_Ldap component which fits to the new Zend_Auth_Adapter_Ldap component
* Couple of feature improvements for Zend_Form
* Several fixes for Zend_Controller
* and many many more

In sum I think there were about 70 issues fixed. Probably even more… I have lost the overview :-)
I hope you enjoy the new version and have fun with it.

Greetings
Thomas
I18N Team Leader, Zend Framework

Back to top
Sunday
2
March
2008

Zend Translate and directory scanning

Hy framework users…

Most of you are already using Zend Translate. Until now the option for scanning a directory for translation files was only available when creating the instance.

I added this feature now also for the addTranslation() method, which means that you are now able to add new directories afterwards. This feature is handy when you are working with a modul based implementation and have also the translations seperated per module.

For those who did not know this feature for now is here a short description:
Instead of adding several translations manually it’s much more convinient to have them added automatically by only one method call.

Depreciated way:

$translate = new Zend_Translate('gettext', '/my/proj/lang/en/proj.mo', 'en');
$translate->addTranslation('/my/proj/lang/de/proj.mo', 'de');
$translate->addTranslation('/my/proj/lang/fr/proj.mo', 'fr');

As you see we have only added three languages… if you are working with seperated translation you will probably have not only one file per language but more.

So it would be better to have this done by Zend_Translate itself… see the following code:

$translate = new Zend_Translate('gettext', '/my/proj/lang/', 'en',
     array('scan' => Zend_Translate::LOCALE_DIRECTORY));

So what is now hapening in the background:
Zend_Translate recognises a directory instead of a file.
With the ’scan’ option we said that the locale/language is written in the directory name.
Zend_Translate will now search all sub-directories within the lang directory and add all found translations.
It uses the directory name as locale if it fits…

So a file ‘/my/proj/lang/de/proj.mo’ would be added within the locale ‘de’ because this directory is recognised as german locale and so on… it doesn’t matter how deep the directory structure is, all subdirectories will be searched.
This works not only with gettext but also with any other adapter like TMX, Array, Csv and so on… the only thing which has to fit is the name of the directory.

But there is also another way to get the name of the locale. It can be written within the filename.

'/my/proj/lang/myfile_de.mo'
'/my/file/lang/myfile-de.mo'
'/my/file/lang/myfile.de.mo'

All of this three ways of naming files will be recognised translation for the locale ‘de’.
To use this way of naming you will only have to use the ’scan’ option with the Zend_Locale::LOCALE_FILENAME constant.

Have fun with the framework.

Greetings
Thomas
I18N Team Leader of the Zend Framework

Back to top
Saturday
1
March
2008

New I18N related feature for ZF 1.0.4

For interested people I attached a small description of changes between 1.0.3 and 1.0.4 of Zend Framework which are related to the I18N core:

All classes:
* Failed autodetection no longer throws a exception (seen under Ubutu in past)

Zend_Date:
* Timezones now work even if the new DateTime extension is not present (seen under PHP < 5.2 and self compiled Linux version)
* added a note about the ISO year and real year formats as both are often switched by users which produces unexpected behaviour

Zend_Locale:
* setting a default locale is now supported, default is “en” but it can be set to anything else
* included the new CLDR 1.5.1 and reworked the data classes which adds several new informations to be available… f.e. timezone for region, currency for language and much much more
* added detection for @ locales (f.e. de_DE@euro)

Zend_TimeSync:
* added a new component to syncronise the server time when there is no service available

Zend_Validate:
* added support for localized dates for Zend_Validate_Date

Zend_View_Helper_Translate:
* added a new View Helper for allowing translations from within the view

Informations for the new ZF 1.5 will come soon

Greetings
Thomas, I18N Team Leader Zend Framwork

Back to top