It may be worth investigating the convenience of using Punic, the PHP-Unicode CLDR Toolkit, to handle localization in IP2
Punic - PHP-Unicode CLDR Toolkit
Punic is a PHP library using the CLDR data to help you localize various variables like numbers, dates, units, lists, …
Here's the list of the main classes that you may want to use in your projects:
- Punic/Data To set the default locale, so that you don't need to specify it every you use Punic functions.
- Punic/Calendar To work with dates
- Punic/Language To work with languages.
- Punic/Territory To work with countries and continents.
- Punic/Number Number-related functions.
- Punic/Unit To work with units (acceleration, angles, area, duration, distance, volume… too many to list them!).
- Punic/Misc Miscellaneous functions (lists, case, …).
- Punic/Plural It's mainly for internal use, but you may want to use it.
- Punic/Phone To work with phone numbers.
- Punic/Currency To work with currencies.
To keep the size of the package at a reasonable level, only data for a limited set of languages (about 40, defined here) is included by default. If you need more, you can get them yourself using the bundled punic-data script.