ID: 14655
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Status: Assigned
Bug Type: Strings related
Operating System: Windows XP Pro (spanish)
PHP Version: 4.1.0
Assigned To: hholzgra
New Comment:
You can use mb_convert_case() instead of ucwords.
Could I close this bug?
Previous Comments:
------------------------------------------------------------------------
[2002-08-27 07:50:25] [EMAIL PROTECTED]
I had this bug to. To get around it, I added some 'hair' to the code.
$string=ucwords($string);
//Bugfix from here on
for($i=0;$i<strlen($string);$i++)
if((ctype_upper($string[$i]) &&( $string[$i-1]==" " || $i==0
))!=TRUE)
$string[$i]=strtolower($string[$i]);
I'm a PHP newbie so I guess some of you can come up with a brighter
solution. This code lowercases _all_ letters that is not either the
first in the string or following a space. If your application does not
meet both this criterias, you might not want this code.
------------------------------------------------------------------------
[2002-07-13 18:10:13] [EMAIL PROTECTED]
chancing status
------------------------------------------------------------------------
[2002-06-17 07:02:15] [EMAIL PROTECTED]
setlocale() doesn't work well with multithreaded servers
as the current locale is set globaly for all threads
------------------------------------------------------------------------
[2002-04-21 06:24:41] [EMAIL PROTECTED]
Confirming your bug (PHP 4.1.2 on W2k)
setlocale() on windows is the problem!
See bug #16718
http://bugs.php.net/bug.php?id=16718
------------------------------------------------------------------------
[2002-01-22 08:03:40] [EMAIL PROTECTED]
Some additional comments:
I cant reproduce this in Linux (meaning the returned data doesnt
change), but with PHP 4.1.1 in Window XP the problem exists, but only
when i change locale, my default locale is:
LC_COLLATE=C;LC_CTYPE=English_United
States.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C
and the output here is:
����������������
With linux:
����������������
But if i change locale with:
setlocale(LC_ALL, "english");
(Locale: English_United States.1252)
The returned data differs at each function call
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/14655
--
Edit this bug report at http://bugs.php.net/?id=14655&edit=1