I totally lack the words to describe the awesomeness of this. Really,
really fantastic. At Agavi (http://www.agavi.org/), we've ported
parts of ICU (locale, calendar, date) to PHP and we're using it
together with CLDR data, but as you might imagine, it's awfully slow.
This new extension will save many kitten's lives. Keep it up!
David
Am 13.07.2007 um 21:35 schrieb Stanislav Malyshev:
Hi all!
We have started a project to make it easier to support
international markets using PHP. A number of internationalization
functions from IBM ICU will be made available in PHP as an extension.
This project targets both PHP 5 and PHP 6. The goal is to support
the most useful i18n services on both, while ensuring that any code
running in PHP 5 using these functions would work the same in PHP
6. The PHP 6
implementation may provide additional functionality.
The demand for internationalization services is large and is needed
today, so we decided to support them in PHP 5 and provide one
common solution that will also work going forward. There will be no
PHP 4 support in the project.
The base for the extension is the ICU library
(http://www.icu-project.org/) already used by PHP 6, and the intent is
to follow the ICU model, so that people having experience working
with ICU in either C/C++ or Java could easily use the PHP API.
The extension is composed of mostly independent functionality modules,
each of which would implement one of the functionalities below.
The APIs support both procedural and object-oriented notation
(internally referring to the same APIs). In PHP 5, the extension
assumes
all incoming and outgoing strings are in UTF-8 encoding.
The scope of the extension was defined as follows:
- Collation (http://www.icu-project.org/apiref/icu4c/ucol_8h.html)
- Number formatting (http://www.icu-project.org/apiref/icu4c/
unum_8h.html)
- Date/time formatting
(http://www.icu-project.org/apiref/icu4c/udat_8h.html)
- Locales (http://www.icu-project.org/apiref/icu4c/uloc_8h.html)
- Calendars (http://www.icu-project.org/apiref/icu4c/ucal_8h.html)
- International domain names
(http://www.icu-project.org/apiref/icu4c/uidna_8h.html)
- Message formatting (http://www.icu-project.org/apiref/icu4c/
umsg_8h.html)
- Resource bundles (http://www.icu-project.org/apiref/icu4c/
ures_8h.html)
We have initial implementations of collation and number formatting
APIs for PHP 5, which will be publicly available soon. PHP 6
implementation and other APIs will follow. The project code will be
available through PECL.
The project is supported by LiveNation, Yahoo! and Zend Technologies.
We welcome all feedback about the project - especially suggestions
about
what functionality is needed and comments about existing
implementation.
We intend to discuss it on the PHP Internationalization list -
[EMAIL PROTECTED] We welcome you to join the list and
participate in the discussion. We will publish API descriptions for
existing functions on the i18n list in a couple of days, to start
the things rolling.
Regards,
PHP-ICU team
--
Stanislav Malyshev, Zend Software Architect
[EMAIL PROTECTED] http://www.zend.com/
(408)253-8829 MSN: [EMAIL PROTECTED]
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php