category Zend
package Zend_Locale
subpackage Format
copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
license New BSD License

 Methods

Returns if the given datestring contains all date parts from the given format.

checkDateFormat(string $date, array $options = array()) : boolean
Static

If no format is given, the default date format from the locale is used If you want to check if the date is a proper date you should use Zend_Date::isDate()

Parameters

$date

string

Date string

$options

array

Options: format_type, fix_date, locale, date_format. See {@link setOptions()} for details.

Returns

boolean

Changes the numbers/digits within a given string from one script to another 'Decimal' representated the stardard numbers 0-9, if a script does not exist an exception will be thrown.

convertNumerals(string $input, string $from, string $to = null) : string
Static

Examples for conversion from Arabic to Latin numerals: convertNumerals('١١٠ Tests', 'Arab'); -> returns '100 Tests' Example for conversion from Latin to Arabic numerals: convertNumerals('100 Tests', 'Latn', 'Arab'); -> returns '١١٠ Tests'

Parameters

$input

string

String to convert

$from

string

Script to parse, see {@link Zend_Locale::getScriptList()} for details.

$to

string

OPTIONAL Script to convert to

Exceptions

\Zend_Locale_Exception

Returns

stringReturns the converted input

Converts a format string from PHP's date format to ISO format Remember that Zend Date always returns localized string, so a month name which returns the english month in php's date() will return the translated month name with this function.

convertPhpToIsoFormat(string $format) : string
Static

.. use 'en' as locale if you are in need of the original english names

The conversion has the following restrictions: 'a', 'A' - Meridiem is not explicit upper/lowercase, you have to upper/lowercase the translated value yourself

Parameters

$format

string

Format string in PHP's date format

Returns

stringFormat string in ISO format

Returns an array with the normalized date from an locale date a input of 10.01.2006 without a $locale would return: array ('day' => 10, 'month' => 1, 'year' => 2006) The 'locale' option is only used to convert human readable day and month names to their numeric equivalents.

getDate(string $date, array $options = array()) : array
Static

The 'format' option allows specification of self-defined date formats, when not using the default format for the 'locale'.

Parameters

$date

string

Date string

$options

array

Options: format_type, fix_date, locale, date_format. See {@link setOptions()} for details.

Returns

arrayPossible array members: day, month, year, hour, minute, second, fixed, format

Returns the default date format for $locale.

getDateFormat(string|\Zend_Locale $locale = null) : string
Static

Parameters

$locale

string\Zend_Locale

OPTIONAL Locale of $number, possibly in string form (e.g. 'de_AT')

Exceptions

\Zend_Locale_Exception throws an exception when locale data is broken

Returns

stringformat

Returns an array with 'year', 'month', 'day', 'hour', 'minute', and 'second' elements extracted from $datetime according to the order described in $format. For a format of 'd.M.y H:i:s', and an input of 10.05.1985 11:20:55, getDateTime() would return: array ('year' => 1985, 'month' => 5, 'day' => 10, 'hour' => 11, 'minute' => 20, 'second' => 55) The optional $locale parameter may be used to help extract times from strings containing both a time and a day or month name.

getDateTime(string $datetime, array $options = array()) : array
Static

Parameters

$datetime

string

DateTime string

$options

array

Options: format_type, fix_date, locale, date_format. See {@link setOptions()} for details.

Returns

arrayPossible array members: day, month, year, hour, minute, second, fixed, format

Returns the default datetime format for $locale.

getDateTimeFormat(string|\Zend_Locale $locale = null) : string
Static

Parameters

$locale

string\Zend_Locale

OPTIONAL Locale of $number, possibly in string form (e.g. 'de_AT')

Exceptions

\Zend_Locale_Exception

Returns

stringformat

Alias for getNumber

getFloat(string $input, array $options = array()) : float
Static

Parameters

$input

string

Number to localize

$options

array

Options: locale, precision. See {@link setOptions()} for details.

Returns

float

Returns the first found integer from an string Parsing depends on given locale (grouping and decimal)

getInteger(string $input, array $options = array()) : integer
Static

Examples for input: ' 2345.4356,1234' = 23455456 '+23,3452.123' = 233452 ' 12343 ' = 12343 '-9456km' = -9456 '0' = 0 '(-){0,1}(\d+(.){0,1})*(\,){0,1})\d+'

Parameters

$input

string

Input string to parse for numbers

$options

array

Options: locale. See {@link setOptions()} for details.

Returns

integerReturns the extracted number

Returns the normalized number from a localized one Parsing depends on given locale (grouping and decimal)

getNumber(string $input, array $options = array()) : string
Static

Examples for input: '2345.4356,1234' = 23455456.1234 '+23,3452.123' = 233452.123 '12343 ' = 12343 '-9456' = -9456 '0' = 0

Parameters

$input

string

Input string to parse for numbers

$options

array

Options: locale, precision. See {@link setOptions()} for details.

Exceptions

\Zend_Locale_Exception

Returns

stringReturns the extracted number

Returns an array with 'hour', 'minute', and 'second' elements extracted from $time according to the order described in $format. For a format of 'H:i:s', and an input of 11:20:55, getTime() would return: array ('hour' => 11, 'minute' => 20, 'second' => 55) The optional $locale parameter may be used to help extract times from strings containing both a time and a day or month name.

getTime(string $time, array $options = array()) : array
Static

Parameters

$time

string

Time string

$options

array

Options: format_type, fix_date, locale, date_format. See {@link setOptions()} for details.

Returns

arrayPossible array members: day, month, year, hour, minute, second, fixed, format

Returns the default time format for $locale.

getTimeFormat(string|\Zend_Locale $locale = null) : string
Static

Parameters

$locale

string\Zend_Locale

OPTIONAL Locale of $number, possibly in string form (e.g. 'de_AT')

Exceptions

\Zend_Locale_Exception

Returns

stringformat

Returns if a float was found Alias for isNumber()

isFloat(string $value, array $options = array()) : boolean
Static

Parameters

$value

string

Localized number string

$options

array

Options: locale. See {@link setOptions()} for details.

Returns

booleanReturns true if a number was found

Returns if a integer was found

isInteger(string $value, array $options = array()) : boolean
Static

Parameters

$value

string

Localized number string

$options

array

Options: locale. See {@link setOptions()} for details.

Returns

booleanReturns true if a integer was found

Checks if the input contains a normalized or localized number

isNumber(string $input, array $options = array()) : boolean
Static

Parameters

$input

string

Localized number string

$options

array

Options: locale. See {@link setOptions()} for details.

Returns

booleanReturns true if a number was found

Sets class wide options, if no option was given, the actual set options will be returned The 'precision' option of a value is used to truncate or stretch extra digits. -1 means not to touch the extra digits.

setOptions(array $options = array()) : array
Static

The 'locale' option helps when parsing numbers and dates using separators and month names. The date format 'format_type' option selects between CLDR/ISO date format specifier tokens and PHP's date() tokens. The 'fix_date' option enables or disables heuristics that attempt to correct invalid dates. The 'number_format' option can be used to specify a default number format string The 'date_format' option can be used to specify a default date format string, but beware of using getDate(), checkDateFormat() and getTime() after using setOptions() with a 'format'. To use these four methods with the default date format for a locale, use array('date_format' => null, 'locale' => $locale) for their options.

Parameters

$options

array

Array of options, keyed by option name: format_type = 'iso' | 'php', fix_date = true | false, locale = Zend_Locale | locale string, precision = whole number between -1 and 30

Exceptions

\Zend_Locale_Exception

Returns

arrayif no option was given

Returns a locale formatted integer number Alias for toNumber()

toFloat(string $value, array $options = array()) : string
Static

Parameters

$value

string

Number to normalize

$options

array

Options: locale, precision. See {@link setOptions()} for details.

Returns

stringLocale formatted number

Returns a localized number

toInteger(string $value, array $options = array()) : string
Static

Parameters

$value

string

Number to normalize

$options

array

Options: locale. See {@link setOptions()} for details.

Returns

stringLocale formatted number

Returns a locale formatted number depending on the given options.

toNumber(string $value, array $options = array()) : string
Static

The seperation and fraction sign is used from the set locale.

0.# -> 12345.12345 -> 12345.12345

0.00 -> 12345.12345 -> 12345.12

,##0.00 -> 12345.12345 -> 12,345.12

Parameters

$value

string

Localized number string

$options

array

Options: number_format, locale, precision. See {@link setOptions()} for details.

Exceptions

\Zend_Locale_Exception

Returns

stringlocale formatted number

Internal method to retrieve the current encoding via the ini setting default_charset for PHP >= 5.6 or iconv_get_encoding otherwise.

_getEncoding() : string
Static

Returns

string

Internal method to detect of Unicode supports UTF8 which should be enabled within vanilla php installations

_getUniCodeSupport() : boolean
Static

Returns

boolean

Search $number for a month name found in $monthlist, and replace if found.

_replaceMonth(string $number, array $monthlist) : integer | false
Static

Parameters

$number

string

Date string (modified)

$monthlist

array

List of month names

Returns

integerfalsePosition of replaced string (false if nothing replaced)

Internal method to set the encoding via the ini setting default_charset for PHP >= 5.6 or iconv_set_encoding otherwise.

_setEncoding(string $encoding) : void
Static

Parameters

$encoding

string

Internal function for checking the options array of proper input values See {@link setOptions()} for details.

_checkOptions(array $options = array()) : array
Static

Parameters

$options

array

Array of options, keyed by option name: format_type = 'iso' | 'php', fix_date = true | false, locale = Zend_Locale | locale string, precision = whole number between -1 and 30

Exceptions

\Zend_Locale_Exception

Returns

arrayif no option was given

Internal method to convert cldr number syntax into regex

_getRegexForType(string $type, array $options) : string
Static

Parameters

$type

string

$options

array

Options: locale. See {@link setOptions()} for details.

Exceptions

\Zend_Locale_Exception

Returns

string

Parse date and split in named array fields

_parseDate(string $date, array $options) : array
Static

Parameters

$date

string

Date string to parse

$options

array

Options: format_type, fix_date, locale, date_format. See {@link setOptions()} for details.

Exceptions

\Zend_Locale_Exception

Returns

arrayPossible array members: day, month, year, hour, minute, second, fixed, format

_seperateFormat()

_seperateFormat(string $format, string $value, integer $precision) : string
Static

Parameters

$format

string

$value

string

$precision

integer

Returns

string

 Properties

 

$_options

$_options 

Default

array('date_format' => null, 'number_format' => null, 'format_type' => 'iso', 'fix_date' => false, 'locale' => null, 'cache' => null, 'disableCache' => null, 'precision' => null)
Static

 Constants

 

STANDARD

STANDARD = 'auto'