Bug #63724 [Opn->Nab]: MessageFormatter buggy when using select formats with nested parameters
Edit report at https://bugs.php.net/bug.php?id=63724&edit=1
ID: 63724
Updated by: felipe@php.net
Reported by: eskwayrd at gmail dot com
Summary: MessageFormatter buggy when using select formats
with nested parameters
-Status: Open
+Status: Not a bug
Type: Bug
Package: I18N and L10N related
Operating System: Linux
PHP Version: 5.4.9
Block user comment: N
Private report: N
New Comment:
If it's really a problem, it occurred on ICU. See a related bug #62673
Using "{1, select, k {{0, number} kB} M {{0, number, #.##} MB} other {{0, number} B}}"
does the job, somehow just like suggested in the bug I pointed out above.
Previous Comments:
------------------------------------------------------------------------
[2012-12-07 23:11:49] eskwayrd at gmail dot com
Description:
------------
When a message formatter formats selects with nested variables, its behaviour is
buggy.
Test script:
---------------
// attempting to translate file size
$locale = 'en_US';
$args = array(1.23435, 'M');
$format = "{1, select, k {{0} kB} M {{0} MB} other {{0} B}}";
echo "#1: ". msgfmt_format_message($locale, $format, $args) ."\n";
$format = "{1, select, k {{0} kB} M {{0, number, #.##} MB} other {{0} B}}";
echo "#2: ". msgfmt_format_message($locale, $format, $args) ."\n";
echo "Error? ". intl_get_error_message() ."\n";
Expected result:
----------------
#1: 1.23435 MB
#2: 1.23 MB
Error? U_ZERO_ERROR
Actual result:
--------------
#1: 1.23435 MB
#2:
Error? Creating message formatter failed: U_ARGUMENT_TYPE_MISMATCH
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=63724&edit=1
Thread (2 messages)