1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision: 292734 $ -->
<phpdoc:classref xmlns:phpdoc="http://php.net/ns/phpdoc" xml:id="class.numberformatter" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The NumberFormatter class</title>
<titleabbrev>NumberFormatter</titleabbrev>
<partintro>
<!-- {{{ NumberFormatter intro -->
<section xml:id="numberformatter.intro">
&reftitle.intro;
<simpara>
Programs store and operate on numbers using a locale-independent binary
representation. When displaying or printing a number it is converted to a
locale-specific string. For example, the number 12345.67 is "12,345.67" in
the US, "12 345,67" in France and "12.345,67" in Germany.
</simpara>
<simpara>
By invoking the methods provided by the NumberFormatter class, you can
format numbers, currencies, and percentages according to the specified or
default locale. NumberFormatter is locale-sensitive so you need to create
a new NumberFormatter for each locale. NumberFormatter methods format
primitive-type numbers, such as double and output the number as a
locale-specific string.
</simpara>
<para>
For currencies you can use currency format type to create a formatter that
returns a string with the formatted number and the appropriate currency
sign. Of course, the NumberFormatter class is unaware of exchange rates
so, the number output is the same regardless of the specified currency.
This means that the same number has different monetary values depending on
the currency locale. If the number is 9988776.65 the results will be:
<simplelist>
<member>9 988 776,65 € in France</member>
<member>9.988.776,65 € in Germany</member>
<member>$9,988,776.65 in the United States</member>
</simplelist>
</para>
<simpara>
In order to format percentages, create a locale-specific formatter with
percentage format type. With this formatter, a decimal fraction such as
0.75 is displayed as 75%.
</simpara>
<simpara>
For more complex formatting, like spelled-out numbers, the rule-based
number formatters are used.
</simpara>
</section>
<!-- }}} -->
<section xml:id="NumberFormatter.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass>
<classname>NumberFormatter</classname>
</ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>NumberFormatter</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!--
<classsynopsisinfo role="comment">&Properties;</classsynopsisinfo>
<fieldsynopsis>
<modifier>public</modifier>
<type>string</type>
<varname linkend="NumberFormatter.props.name">name</varname>
</fieldsynopsis>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.NumberFormatter')/db:refentry/db:refsect1[@role='description']/descendant::db:fieldsynopsis[1])" />
-->
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include
xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.numberformatter')/db:refentry/db:refsect1[@role='description']/descendant::db:constructorsynopsis[1])" />
<xi:include
xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.numberformatter')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ NumberFormatter properties
<section xml:id="NumberFormatter.props">
&reftitle.properties;
<variablelist>
<varlistentry xml:id="NumberFormatter.props.name">
<term><varname>name</varname></term>
<listitem>
<para>Prop description</para>
</listitem>
</varlistentry>
</variablelist>
</section>
}}} -->
&reference.intl.numberformatter-constants;
<section xml:id="numberformatter.seealso">
&reftitle.seealso;
<para>
<simplelist>
<member>
<link xlink:href="&url.icu.formatparse;">
ICU formatting documentation
</link>
</member>
<member>
<link xlink:href="&url.icu.formatnumbers;">ICU number formatters</link>
</member>
<member>
<link xlink:href="&url.icu.decimalformat;">ICU decimal formatters</link>
</member>
<member>
<link xlink:href="&url.icu.ruleformat;">
ICU rule-based number formatters
</link>
</member>
</simplelist>
</para>
</section>
</partintro>
&reference.intl.entities.numberformatter;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|