By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
457,761 Members | 1,193 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 457,761 IT Pros & Developers. It's quick & easy.

Setlocale problem (PHP on Linux)

P: n/a
Hi,

I run Apache 1.3.33 and PHP 5.0.4 on my Suse9.2 Linux box.
If I try any of the following:

setlocale (LC_TIME,'nl');
setlocale (LC_TIME,'nl_NL'); //example php.net site
setlocale (LC_TIME,'NL');
setlocale (LC_TIME,'Dutch');
setlocale (LC_TIME,'nl-NL');
etc.

nothing changes, and FALSE is returned.
When invoked with a NULL value, 'c' is returned.
In /usr/share/locale the dir for Dutch localization is called nl.

Any ideas anyoneon how to change locale to Dutch?
TIA

Sh.
Dec 23 '05 #1
Share this Question
Share on Google+
3 Replies


P: n/a
Schraalhans Keukenmeester wrote:
I run Apache 1.3.33 and PHP 5.0.4 on my Suse9.2 Linux box.
If I try any of the following:

setlocale (LC_TIME,'nl');
setlocale (LC_TIME,'nl_NL'); //example php.net site
setlocale (LC_TIME,'NL');
setlocale (LC_TIME,'Dutch');
setlocale (LC_TIME,'nl-NL');
etc.

nothing changes, and FALSE is returned.
When invoked with a NULL value, 'c' is returned.
In /usr/share/locale the dir for Dutch localization is called nl.


Try the following script and check which locales return 1:

<?php

$locale = '/usr/share/locale';
$list = glob("$locale/*nl*");

foreach ($list as $item) {
$item = basename($item);
echo " $item : ", setlocale(LC_TIME, $item) ? 1 : 0, "\n";
}

?>
JW
Dec 23 '05 #2

P: n/a
Janwillem Borleffs wrote:
Schraalhans Keukenmeester wrote:
I run Apache 1.3.33 and PHP 5.0.4 on my Suse9.2 Linux box.
If I try any of the following:

setlocale (LC_TIME,'nl');
setlocale (LC_TIME,'nl_NL'); //example php.net site
setlocale (LC_TIME,'NL');
setlocale (LC_TIME,'Dutch');
setlocale (LC_TIME,'nl-NL');
etc.

nothing changes, and FALSE is returned.
When invoked with a NULL value, 'c' is returned.
In /usr/share/locale the dir for Dutch localization is called nl.

Try the following script and check which locales return 1:

<?php

$locale = '/usr/share/locale';
$list = glob("$locale/*nl*");

foreach ($list as $item) {
$item = basename($item);
echo " $item : ", setlocale(LC_TIME, $item) ? 1 : 0, "\n";
}

?>

I tried and got no results at all. Trying to glob other directories
returns unexpected results. Some dirs produce a full array with all the
files present in that directory, others produce nothing or -stranger-
only one item.

For instance, glob(/bin/*) only returns fortune, and so does
glob(/usr/share/*). All other files/dirs are not in the array. If I look
at ownership and rights, these have similar settings to all other
entries. Vague... Perhaps an Apache or php.ini setting? I am lost here.

I am gonna try all locale entries by hand I think, see which do yield a
positive result.

Thanks for your help JW!
Regards
Sh
Dec 24 '05 #3

P: n/a
Schraalhans Keukenmeester wrote:
Janwillem Borleffs wrote:
Schraalhans Keukenmeester wrote:
I run Apache 1.3.33 and PHP 5.0.4 on my Suse9.2 Linux box.
If I try any of the following:

setlocale (LC_TIME,'nl');
setlocale (LC_TIME,'nl_NL'); //example php.net site
setlocale (LC_TIME,'NL');
setlocale (LC_TIME,'Dutch');
setlocale (LC_TIME,'nl-NL');
etc.

nothing changes, and FALSE is returned.
[snip]
I am gonna try all locale entries by hand I think, see which do yield a
positive result.

Thanks for your help JW!
Regards
Sh

Update: none of the locales works. Must be a general issue setting thru
php locale or something. I'll keep looking.
Sh
Dec 24 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.