[Mapbender-dev] setlocale, LC_MESSAGES and windows

Thomas Baschetti Thomas.Baschetti at gmx.de
Tue Dec 9 08:16:17 EST 2008


Hi,

today i encountered a little problem:
In class_locale.php we call

$selectedLocale = setlocale(LC_MESSAGES, $locale);

which gives a warning.
Warning: setlocale() [function.setlocale]: Invalid locale category name LC_MESSAGES, must be one of LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, or LC_TIME in C:\Programme\mapbender\http\classes\class_locale.php on line 103

(i had warnings turned off, so i didn't notice this before...)

According to http://de.php.net/manual/en/function.setlocale.php the constant is not always defined:
LC_MESSAGES for system responses (available if PHP was compiled with libintl) 

Unfortunatly PHP under windows doesn't seem to be compiled with libintl, neither
the version from php.net nor the version bundled with MS4W.

Can we savely change this line, e.g. to

$selectedLocale = setlocale(LC_ALL, $locale);

or do we need a workaround for windows-systems?
Or am i missing something?

Bye
Thomas

-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger


More information about the Mapbender_dev mailing list