ID: 14655 Updated by: venaas Reported By: [EMAIL PROTECTED] Status: Open Bug Type: Strings related Operating System: Windows XP Pro (spanish) PHP Version: 4.1.0 New Comment:
To me this sounds like a system problem. PHP only uses the systems notion of upper and space. When the character following the international character it is probably because the international character is treated as a space by the system (isspace() returning true). It's quite weird that the results are not consistent. The PHP function itself is quite straightforward, so I suspect the locale is not the same every time, or that the systems isspace() and possibly toupper() is broken. I can't say for sure though. Previous Comments: ------------------------------------------------------------------------ [2001-12-21 22:32:30] [EMAIL PROTECTED] When using the ucwords() function with strings containing international characters, the function will return incorrect values. The return value will be different every time the function is called. I've seen bogus bug reports for this function so we have a slight chance for this to be yet another bogus bug, but look at this: echo setlocale(LC_ALL, "0"); Output: LC_COLLATE=C;LC_CTYPE=Spanish_Argentina.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C --- echo ucwords('ñáéíóúàèìòùäëïöü'); Output: ÑáéíóúÀèìÒùäËïÖü Output again (refresh button on browser): ÑáÉíóúàèìòùäëïöÜ Output again: ÑáéíÓúàèìÒùäëïöÜ etc. etc. Now, if I do setlocale(LC_ALL, "spanish"), the restult is still the same. I've noted that the problem is not the intl. char, but the char after that. This is, ucwords("cañas") will return "Cañas" or "CañAs", randomly. Scenario: Windows XP Pro (spanish) Apache 1.3.22 PHP 4.1.0 ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=14655&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]