Edit report at https://bugs.php.net/bug.php?id=65769&edit=1

 ID:                 65769
 Updated by:         paj...@php.net
 Reported by:        christoph at ymail dot com
 Summary:            localeconv() broken in TS builds
 Status:             Open
 Type:               Bug
 Package:            Strings related
 Operating System:   Windows 7 x64
 PHP Version:        5.5.4
 Block user comment: N
 Private report:     N

 New Comment:

It is not (always, there are many issues) Windows specific.

Locale are not TS, per se.

I'm not sure it is fixable (out of the PHP scope) and I would strongly suggest 
to 
use INTL instead for any locale related operations, and not only because of 
these 
bugs.


Previous Comments:
------------------------------------------------------------------------
[2013-09-26 21:32:17] ahar...@php.net

This appears to work as expected on Linux in both TS and NTS builds, so I'm 
guessing this is Windows specific.

------------------------------------------------------------------------
[2013-09-26 15:09:32] christoph at ymail dot com

Description:
------------
I try to set the locale for my script on Windows. There is *no* webserver 
involved, we're talking about running vanilla PHP binaries directly on the cmd.

Using the TS builds does not work, localeconv() returns empty data.
Using the NTS builds works fine.

Both PHP versions are 5.5.4, straight from windows.php.net. No changes to the 
php.ini (in fact, there is no php.ini at all). There are no other PHP processes 
running anywhere on my system.

I can see (even if I don't fully understand) problems using setlocale() in 
multu-
threaded webservers and stuff, but there is no multi-threading involved here.

Test script:
---------------
<?php
setlocale(LC_ALL, 'sve');
print_r(localeconv());


Expected result:
----------------
Array
(
    [decimal_point] => ,
    [thousands_sep] =>  
    [int_curr_symbol] => SEK
    [currency_symbol] => kr
    [mon_decimal_point] => ,
    [mon_thousands_sep] => .
    [positive_sign] => 
    [negative_sign] => -
    [int_frac_digits] => 2
    [frac_digits] => 2
    [p_cs_precedes] => 0
    [p_sep_by_space] => 1
    [n_cs_precedes] => 0
    [n_sep_by_space] => 1
    [p_sign_posn] => 1
    [n_sign_posn] => 1
    [grouping] => Array
        (
            [0] => 3
        )

    [mon_grouping] => Array
        (
            [0] => 3
        )

)


Actual result:
--------------
Array
(
    [decimal_point] => .
    [thousands_sep] => 
    [int_curr_symbol] => 
    [currency_symbol] => 
    [mon_decimal_point] => 
    [mon_thousands_sep] => 
    [positive_sign] => 
    [negative_sign] => 
    [int_frac_digits] => 127
    [frac_digits] => 127
    [p_cs_precedes] => 127
    [p_sep_by_space] => 127
    [n_cs_precedes] => 127
    [n_sep_by_space] => 127
    [p_sign_posn] => 127
    [n_sign_posn] => 127
    [grouping] => Array
        (
        )

    [mon_grouping] => Array
        (
        )

)



------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=65769&edit=1

Reply via email to