diff options
author | Stefan Parviainen <saparvia@caterva.eu> | 2014-12-30 19:57:12 +0100 |
---|---|---|
committer | Stefan Parviainen <saparvia@caterva.eu> | 2014-12-30 20:29:31 +0100 |
commit | 9cab8ae58a29ecf7387e6865aa170715caeabf04 (patch) | |
tree | 97c4791763ecb7c877c13b562a0ad3b80857b9d7 /library/intl/src/Formatter/NumberFormatterInterface.php | |
parent | 8e034a3b6b67a9aaa20fe9db671350e198fe7c42 (diff) | |
download | volse-hubzilla-9cab8ae58a29ecf7387e6865aa170715caeabf04.tar.gz volse-hubzilla-9cab8ae58a29ecf7387e6865aa170715caeabf04.tar.bz2 volse-hubzilla-9cab8ae58a29ecf7387e6865aa170715caeabf04.zip |
Language names via intl library. Fixes #773
Diffstat (limited to 'library/intl/src/Formatter/NumberFormatterInterface.php')
-rw-r--r-- | library/intl/src/Formatter/NumberFormatterInterface.php | 134 |
1 files changed, 134 insertions, 0 deletions
diff --git a/library/intl/src/Formatter/NumberFormatterInterface.php b/library/intl/src/Formatter/NumberFormatterInterface.php new file mode 100644 index 000000000..721107555 --- /dev/null +++ b/library/intl/src/Formatter/NumberFormatterInterface.php @@ -0,0 +1,134 @@ +<?php + +namespace CommerceGuys\Intl\Formatter; + +use CommerceGuys\Intl\Currency\CurrencyInterface; +use CommerceGuys\Intl\NumberFormat\NumberFormatInterface; + +interface NumberFormatterInterface +{ + /* Format style constants */ + const DECIMAL = 1; + const PERCENT = 2; + const CURRENCY = 3; + const CURRENCY_ACCOUNTING = 4; + + /* Currency display style constants */ + const CURRENCY_DISPLAY_SYMBOL = 1; + const CURRENCY_DISPLAY_CODE = 2; + + /** + * Formats a number. + * + * Please note that the provided value should already be rounded. + * This formatter doesn't do any rounding of its own, and will simply + * truncate extra digits. + * + * @param string $value The value to format. + * + * @return string + */ + public function format($value); + + /** + * Formats a currency value. + * + * Please note that the provided value should already be rounded. + * This formatter doesn't do any rounding of its own, and will simply + * truncate extra digits. + * + * @param string $value The value to format. + * @param CurrencyInterface $currency The currency. + * + * @return string + */ + public function formatCurrency($value, CurrencyInterface $currency); + + /** + * Parses a formatted currency value. + * + * Commonly used in price input widgets where the end-user might + * input a value using digits and symbols common to their locale. + * + * @param string $value The value to parse. + * @param CurrencyInterface $currency The currency. + * + * @return string|false The parsed numeric value or FALSE on error. + */ + public function parseCurrency($value, CurrencyInterface $currency); + + /** + * Gets the number format. + * + * @return NumberFormatInterface + */ + public function getNumberFormat(); + + /** + * Gets the minimum number of fraction digits. + * + * Defaults to 0 for decimal and percentage styles. + * Defaults to null for currency styles, since the currency number of + * fraction digits is used as the default in that case. + * + * @return int + */ + public function getMinimumFractionDigits(); + + /** + * Sets the minimum number of fraction digits. + * + * @param int $minimumFractionDigits + */ + public function setMinimumFractionDigits($minimumFractionDigits); + + /** + * Gets the maximum number of fraction digits. + * + * Defaults to 3 for decimal and percentage styles. + * Defaults to null for currency styles, since the currency number of + * fraction digits is used as the default in that case. + * + * @return int + */ + public function getMaximumFractionDigits(); + + /** + * Sets the maximum number of fraction digits. + * + * @param int $maximumFractionDigits + */ + public function setMaximumFractionDigits($maximumFractionDigits); + + /** + * Returns whether the major digits will be grouped. + * + * @return bool + */ + public function isGroupingUsed(); + + /** + * Sets whether or not major digits should be grouped + * + * @param bool $groupingUsed + */ + public function setGroupingUsed($groupingUsed); + + /** + * Gets the currency display style. + * + * Controls whether a currency amount will be shown with the + * currency symbol (CURRENCY_DISPLAY_SYMBOL) or the + * currency code (CURRENCY_DISPLAY_CODE). + * + * @return int + */ + public function getCurrencyDisplay(); + + /** + * Sets the currency display style. + * + * @param int $currencyDisplay One of the CURRENCY_DISPLAY_ constants. + */ + public function setCurrencyDisplay($currencyDisplay); +} |